CN105824696B - 一种具有定时中断功能的处理器装置 - Google Patents

一种具有定时中断功能的处理器装置 Download PDF

Info

Publication number
CN105824696B
CN105824696B CN201610157123.5A CN201610157123A CN105824696B CN 105824696 B CN105824696 B CN 105824696B CN 201610157123 A CN201610157123 A CN 201610157123A CN 105824696 B CN105824696 B CN 105824696B
Authority
CN
China
Prior art keywords
module
processor
processor core
timer
connect
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610157123.5A
Other languages
English (en)
Other versions
CN105824696A (zh
Inventor
任浩琪
吴俊�
赵朝兴
陈鑫
牛丽凡
李涵
张志峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei Qianxin Technology Co.,Ltd.
Original Assignee
Tongji University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tongji University filed Critical Tongji University
Priority to CN201610157123.5A priority Critical patent/CN105824696B/zh
Publication of CN105824696A publication Critical patent/CN105824696A/zh
Application granted granted Critical
Publication of CN105824696B publication Critical patent/CN105824696B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4825Interrupt from clock, e.g. time of day
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种具有定时中断功能的处理器装置,该处理器装置包括内部层次、中间层次和顶层,内部层次为处理器内核,包括特殊目标寄存器、用以逐级处理指令的译码和执行流水线以及用以控制流水线运行的旁路模块和流水线暂停模块;中间层次包括处理器核以及分别与处理器核连接的外设接口和存储器,所述的处理器核内还设有中断模块和定时器,所述的定时器分别与中断模块和特殊目标寄存器连接,所述的中断模块与处理器内核连接;顶层包括调试接口、总线和直接存储访问模块,所述的调试接口与处理器核连接,所述的直接存储访问模块分别与总线和存储器连接,所述的总线与处理器核连接。与现有技术相比,本发明具有效率高、响应快等优点。

Description

一种具有定时中断功能的处理器装置
技术领域
本发明涉及处理器体系结构领域,尤其是涉及一种具有定时中断功能的处理器装置。
背景技术
数字信号处理器(DSP)是一种特殊结构的微处理器,是专门用来处理大规模数字信号的处理器。专用数字信号处理器的实时运行速度一般也比通用处理器快,其主要特色是强大的数字运算能力,因此主要被用于涉及到大规模数字信息计算的领域。数字信号处理器(DSP)已经成为数字化世界中日益重要的芯片。
随着高新技术的快速发展,对数字信号处理器(DSP)的功能要求也越来越高。例如,对外部设备的相应等待可以通过执行相应程序反复对外部设备询问实现,但此时处理器本身就无法执行其他程序。另一种解决方法是设置一个定时器,当定时器计数完毕后,通过中断通知处理器对外部设备询问,这样在计数过程中,处理器就可以执行其他程序,从而提高处理器的效率。然而,所述定时器和中断产生模块通常在处理器之外,对定时器进行设置依然需要占用处理器的大量执行周期。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种效率高、响应快的具有定时中断功能的处理器装置。
本发明的目的可以通过以下技术方案来实现:
一种具有定时中断功能的处理器装置,用以辅助数字信号处理器实现内部定时器的中断,该处理器装置设有三个层次,包括内部层次、中间层次和顶层,其中:
内部层次为处理器内核,包括特殊目标寄存器、用以逐级处理指令的译码和执行流水线以及用以控制流水线运行的旁路模块和流水线暂停模块;
中间层次包括处理器核以及分别与处理器核连接的外设接口和存储器,所述的处理器核内还设有中断模块和定时器,所述的定时器分别与中断模块和特殊目标寄存器连接,所述的中断模块与处理器内核连接;
顶层包括调试接口、总线和直接存储访问模块,所述的调试接口与处理器核连接,所述的直接存储访问模块分别与总线和存储器连接,所述的总线与处理器核连接。
所述的顶层还包括通过总线与处理器核连接的外部接口。
所述的中断模块和定时器与处理器核的时钟频率相同。
所述的处理器内核还包括异常处理模块,用以处理流水线产生的异常情况、控制流水线跳转到相应的异常处理执行子程序,并在异常处理完成后,使之前被执行的程序从中断点继续执行。
所述的流水线暂停模块用以对流水线中的各流水级单独控制,或使某一流水级暂停或者刷新该流水级对应的寄存器。
所述的特殊目标寄存器用以保存处理器核的状态信息、控制信息和定时器的计时周期数。
与现有技术相比,本发明具有以下优点:
一、效率高:处理器核内部本身包含定时器模块中断模块,这些模块工作时的时钟频率与处理器本身相同,一旦中断发生,可以更快地提交相应,比现有技术中外置的定时、中断模块效率更高。
二、响应快:定时器模块和中断模块作为一个整体共同工作,即该中断模块只对所述定时器模块送来的信号做出相应,与现有技术中能相应各种不同来源信号以产生中断的中断模块相比,响应更快,效率更高。
附图说明
图1为本发明的结构示意图。
图2为定时器模块的使用步骤。
其中,1、处理器内核,11、流水线,12、旁路模块,13、流水线暂停模块,14、特殊目标寄存器,15、异常处理模块,2、中间层次,21、处理器核,211、中断模块,212、定时器,22、外设接口,23、存储器,3、顶层,31、调试接口,32、总线,33、直接存储访问模块,34、外部接口。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
实施例:
如图1所示,本处理器装置由三个层次构成,内部层次为处理器内核1,是由处理器最基本的机构组成,包括了流水线11、旁路(BYPASS)模块12、流水线暂停(FREEZE)模块13和异常处理模块15,所有指令的译码执行都在该内核中依流水线逐级执行完成,旁路模块12、流水线暂停模块13和异常处理模块15均用于控制流水线运行。
处理器装置的中间层次2主要包括了处理器核21,基本的外设接口22和存储器23,外设接22和存储器23均与处理器核21连接,存储器23进一步分为指令存储器和数据存储器,指令存储器用于存储指令供处理器21执行,数据存储器用于存储数据供处理器核21读写。
处理器装置的顶层3包括了调试接口31(JTAG),总线32(Wishbone)以及直接存储访问模块33(DMA),此外,顶层3提供了处理器装置对外访问的外部接口34。其中,调试接口31和处理器核21连接,专门用于外部对处理器状态的调试;直接存储访问模块33分别与总线32和存储器23连接,用于不经处理器核直接处理,直接在总线32和存储器23之间传递数据;此外,总线32还与处理器核21和对外接口34连接,用于处理器核21访问外部数据。
在处理器内核中,流水线暂停模块13用于控制流水线的暂停。该模块在设计时有以下特点:
(1)对各流水级单独控制,可以分别让某一级流水线暂停或者刷新该级流水线的流水线寄存器。
(2)控制信号的优先级设计,每一级流水线的暂停信号都比处在它之后的流水线的暂停信号优先级高。
(3)多周期指令的执行,译码器需要告诉流水线暂停模块该指令需要多少个周期才能执行完,因此流水线暂停模块在内部保存了一个计数器用来保存停等的周期数。
在处理器内21中,异常处理模块15用来处理产生的各种异常情况,包括溢出异常,访存地址不对齐等。一旦有异常发生,之后异常处理模块15根据发生异常的向量号取得向量表的入口地址,控制流水线11跳转到相应的异常处理执行子程序。
具体地,正在被执行程序的返回地址被保存在了一个特殊目标寄存器14里面,当程序执行中断返回指令时,处理器核21从该特殊目标寄存器14读出返回地址而后跳转,使得之前被执行的程序能够从中断点继续执行。其次异常处理需要刷新流水线,也就是说在异常发生的之后的所有指令对寄存器的写回操作均会被放弃,而刷新的操作由流水线暂停模块13控制。
在处理器内核21中设有特殊目标寄存器模块,该模块提供了特殊目标寄存器14的接口,使它可以解码特殊目标寄存器14的地址并访问特殊目标寄存器14,特殊目标寄存器14的数据输出到定时器模块进行控制,特殊目标寄存器14可以用于保存处理器内核21的状态信息或者控制信息,包括处理器状态位、配置的程序地址空间等信息。
对特殊目标寄存器14的读写使用加载存储指令,特殊目标寄存器14有单独的编址空间,当数据读取指令或数据存储指令计算出访存地址时,如果落在特殊目标寄存器14的编址空间,则从特殊目标寄存器模块得到特殊目标寄存器14的值或者将数据写入特殊目标寄存器14。
在处理器装置中,外设接口22主要用于处理器内核21和外部设备进行交互的,拓展了处理器本身的功能,外设接口22内部设有中断处理单元、定时器单元和调试单元。
在处理器装置中,所有外部设备产生的中断信号都将被送到中断处理单元进行处理。中断处理单元支持不可屏蔽中断和具有优先级的可屏蔽中断。对于可屏蔽中断,可以通过特殊目标寄存器14对中断进行屏蔽。每次当中断处理单元接收到外部设备送来的中断信号时,中断处理单元首先与相应的中断屏蔽标志位做“逻辑与”操作,其输出结果被送到处理器内核1,同时把相应产生的中断向量号也一并送到处理器内核1,从而由处理器内核1进行后续操作。
在处理器装置中,定时器212主要用于记录一定的时钟周期数,当达到计数值的时候,将向处理器核1送出一个中断信号。定时器212的设计思路是,在定时器212内部有两个寄存器,一个用于保存预先设置的需要计时的数值,另一个用于保存当前的计数值。在使用定时器212之前,同样需要通过特殊目标寄存器14对定时器212进行配置。一旦开始之后,每个时钟周期,定时器212内部的计数器就会累加1,直到达到要求的计数值然后送出中断信号。
如图2所示,本实施例通过一下步骤对定时器212进行配置:
(1)通过特殊目标寄存器模块配置定时器212,主要需要配置定时器的计时数值寄存器,该寄存器保存了定时器需要记录的周期数。
(2)配置完成之后定时器212即开始计时,直到达到需要的周期数。
(3)当定时器212计时到所需要的周期数的时候,定时器212计数停止,并告知中断模块211,中断模块211则送出中断到处理器内核1,由处理器内核1执行中断处理子程序会处理后续任务。
最后,以一条数据读取(LOAD)指令和一条数据存储(STORE)指令执行为例,来演示整个处理器装置通过执行程序对定时器进行配置的工作步骤。所述程序如下:
LOAD R0,R1,$100
STORE R0,R3,$200
该段程序首先执行一条数据读取(LOAD)指令,然后执行一条数据存储(STORE)指令,对于数据存储(STORE)指令,假设数据存储(STORE)指令的目的地址落在了特殊目标寄存器14(SPR)的地址空间,具体对应到定时器212(TIMER)。主要有以下步骤:
(1)程序和数据的导入。在处理器上电之后,处理器将工作于从设备(Slave)模式,之后直接存储访问模块(DMA)开始工作,将外部的只读存储器(ROM)上的数据和需要执行的指令送到片上的数据和指令存储器(RAM)内部,之后复位(RESET)处理器,处理器将从程序开始的第一条指令开始执行指令。
(2)假设现阶段取指到了所述数据读取(LOAD)指令,经过译码产生相应的访存信号,同时通过访问寄存器文件,读得寄存器里面的数值。之后在执行级通过处理器内部的加法器算得需要访存的地址。
(3)送出该访存地址,并取得下一条指令。在对该下一条指令译码的时候,旁路(BYPASS)模块发现存在数据依赖,但是此时上一条数据读取(LOAD)指令正在进行的访存操作还没有取回数据。
(4)旁路(BYPASS)模块通知流水线暂停(FREEZE)模块暂停流水线,因此数据存储(STORE)指令将等待两个周期,直到数据读取(LOAD)指令取回了访存的数据。
(5)数据存储(STORE)指令取到旁路(BYPASS)模块送过来的结果之后,计算出访存地址。之后,处理器发现数据存储(STORE)指令的地址空间并不在数据存储器里面而是在特殊目的寄存器(SPR)的地址空间里面。
(6)地址送到特殊目标寄存器模块,特殊目标寄存器模块对地址进行译码,找到该指令具体需要访问的模块是定时器(TIMER),最后特殊目标寄存器(SPR)产生读写信号,完成对定时器(TIMER)的特殊寄存器的访问。

Claims (1)

1.一种具有定时中断功能的处理器装置,用以辅助数字信号处理器实现内部定时器的中断,其特征在于,该处理器装置设有三个层次,包括内部层次、中间层次和顶层,其中:
内部层次为处理器内核(1),包括特殊目标寄存器(14)、用以逐级处理指令的译码和执行流水线(11)以及用以控制流水线(11)运行的旁路模块(12)和流水线暂停模块(13),所述的流水线暂停模块(13)用以对流水线(11)中的各流水级单独控制,或使某一流水级暂停或者刷新该流水级对应的寄存器,所述的特殊目标寄存器(14)用以保存处理器核(21)的状态信息、控制信息和定时器(212)的计时周期数,所述的处理器内核(1)还包括异常处理模块(15),用以处理流水线(11)产生的异常情况、控制流水线(11)跳转到相应的异常处理执行子程序,并在异常处理完成后,使之前被执行的程序从中断点继续执行;
中间层次(2)包括处理器核(21)以及分别与处理器核(21)连接的外设接口(22)和存储器(23),所述的处理器核(21)内还设有中断模块(211)和定时器(212),所述的定时器(212)分别与中断模块(211)和特殊目标寄存器(14)连接,所述的中断模块(211)与处理器内核(1)连接,所述的中断模块(211)和定时器(212)与处理器核(21)的时钟频率相同;
顶层(3)包括调试接口(31)、总线(32)和直接存储访问模块(33),所述的调试接口(31)与处理器核(21)连接,所述的直接存储访问模块(33)分别与总线(32)和存储器(23)连接,所述的总线(32)与处理器核(21)连接,所述的顶层(3)还包括通过总线(32)与处理器核(21)连接的外部接口(34)。
CN201610157123.5A 2016-03-18 2016-03-18 一种具有定时中断功能的处理器装置 Active CN105824696B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610157123.5A CN105824696B (zh) 2016-03-18 2016-03-18 一种具有定时中断功能的处理器装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610157123.5A CN105824696B (zh) 2016-03-18 2016-03-18 一种具有定时中断功能的处理器装置

Publications (2)

Publication Number Publication Date
CN105824696A CN105824696A (zh) 2016-08-03
CN105824696B true CN105824696B (zh) 2019-07-05

Family

ID=56523581

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610157123.5A Active CN105824696B (zh) 2016-03-18 2016-03-18 一种具有定时中断功能的处理器装置

Country Status (1)

Country Link
CN (1) CN105824696B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107479419B (zh) * 2017-08-26 2020-07-10 广东利迅达机器人系统股份有限公司 一种塑封电机自动生产管理系统的控制方法
CN108182083B (zh) * 2017-12-06 2021-12-24 中国航空工业集团公司西安航空计算技术研究所 一种支持断点调试的取指译码电路
CN110083447A (zh) * 2019-04-26 2019-08-02 宁波三星医疗电气股份有限公司 一种中断处理方法及系统
CN114489816B (zh) * 2021-12-22 2024-05-14 瑞芯微电子股份有限公司 定时器装置和提供定时的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1560731A (zh) * 2004-03-03 2005-01-05 浙江大学 32位媒体数字信号处理器
CN103019976A (zh) * 2011-09-22 2013-04-03 中国航天科工集团第三研究院第八三五七研究所 基于fpga的hpi总线上位机接口

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1560731A (zh) * 2004-03-03 2005-01-05 浙江大学 32位媒体数字信号处理器
CN103019976A (zh) * 2011-09-22 2013-04-03 中国航天科工集团第三研究院第八三五七研究所 基于fpga的hpi总线上位机接口

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
新型MSP430X32X混合信号微处理器;梁福平 等;《仪表技术与传感器》;20010722;第2页第1.5节

Also Published As

Publication number Publication date
CN105824696A (zh) 2016-08-03

Similar Documents

Publication Publication Date Title
US7689867B2 (en) Multiprocessor breakpoint
US10970192B2 (en) Debugging support unit for microprocessor
CN105824696B (zh) 一种具有定时中断功能的处理器装置
JP6006248B2 (ja) 命令エミュレーションプロセッサ、方法、およびシステム
US9547493B2 (en) Self-timed user-extension instructions for a processing device
TWI437424B (zh) 可自我重置之微處理器及其方法
US9996127B2 (en) Method and apparatus for proactive throttling for improved power transitions in a processor core
JPH07175666A (ja) データプロセッサおよびその割込み要求処理方法
TWI515653B (zh) 指令順序執行之指令對、處理器、方法及系統
US20160224485A1 (en) Processor model using a single large linear registers, with new interfacing signals supporting fifo-base i/o ports, and interrupt-driven burst transfers eliminating dma, bridges, and external i/o bus
Arm et al. Low-Power 32-bit Dual-MAC 120$\mu $ W/MHz 1.0 V icyflex1 DSP/MCU Core
US11086631B2 (en) Illegal instruction exception handling
US11023342B2 (en) Cache diagnostic techniques
CN111177067B (zh) 一种片上系统
US7516311B2 (en) Deterministic microcontroller context arrangement
US6347368B1 (en) Microcomputing device for exchanging data while executing an application
KR102379886B1 (ko) 벡터 명령 처리
US7562207B2 (en) Deterministic microcontroller with context manager
CN115878266A (zh) ARM Cortex-A7处理器仿真方法、系统、介质及设备
JP2010003151A (ja) データ処理装置
US11119149B2 (en) Debug command execution using existing datapath circuitry
Dostálek et al. Self-tuning digital PID controller implemented on 8-bit Freescale microcontroller
JP4975586B2 (ja) 複数本のシーケンスプログラムを並列して実行可能なプログラマブルコントローラ
Costa et al. SICXE: Improving experience with didactic processors
CN102073551B (zh) 可自我重置的微处理器及其方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200813

Address after: 401, building e, phase I, Daheng science and Technology Park, Xili street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen xinghaiwei Technology Co., Ltd

Address before: 200092 Shanghai City, Yangpu District Siping Road No. 1239

Patentee before: TONGJI University

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210210

Address after: 518000 room 604, building 13, songpingshan residential building, Shenbao Road, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Qiao Hongbo

Address before: 518055 Room 401, building e, phase I, dahen Science Park, Xili street, Nanshan District, Shenzhen City, Guangdong Province

Patentee before: Shenzhen xinghaiwei Technology Co., Ltd

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210401

Address after: Room a8-09, 13 / F, block a, building J1, phase II, innovation industrial park, 2800 innovation Avenue, Hefei high tech Zone, China (Anhui) pilot Free Trade Zone, Hefei City, Anhui Province, 230088

Patentee after: Hefei Qianxin Technology Co.,Ltd.

Address before: 518000 room 604, building 13, songpingshan residential building, Shenbao Road, Nanshan District, Shenzhen City, Guangdong Province

Patentee before: Qiao Hongbo