CN112579173A - 一种多warp多周期双发射指令状态记录电路及方法 - Google Patents
一种多warp多周期双发射指令状态记录电路及方法 Download PDFInfo
- Publication number
- CN112579173A CN112579173A CN202011399428.XA CN202011399428A CN112579173A CN 112579173 A CN112579173 A CN 112579173A CN 202011399428 A CN202011399428 A CN 202011399428A CN 112579173 A CN112579173 A CN 112579173A
- Authority
- CN
- China
- Prior art keywords
- warp
- instruction
- module
- instruction information
- scheduling
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 17
- 230000005540 biological transmission Effects 0.000 claims abstract description 21
- 230000015654 memory Effects 0.000 claims description 12
- 230000009977 dual effect Effects 0.000 claims description 5
- 241001510071 Pyrrhocoridae Species 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 1
- 238000004043 dyeing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
- G06F9/3869—Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Advance Control (AREA)
- Time-Division Multiplex Systems (AREA)
Abstract
本发明涉及一种多warp多周期双发射指令状态记录电路及方法,本发明的记录电路包括指令译码模块、指令状态模块和Warp调度模块,其中:指令译码模块分别与指令状态模块和warp调度模块连接,用于存储预译码的多warp的双发射指令信息;指令状态模块分别与指令译码模块和warp调度模块连接,实现多warp双发射指令信息待发射和正在发射的状态记录;warp调度模块分别与指令译码模块和指令状态模块连接,对多个warp的发射请求进行轮询调度。本发明可以提高统一染色器阵列中多warp多周期双发射指令发射的时序性能,而且电路实现简单。
Description
技术领域
本发明属于计算机图形处理硬件领域,涉及一种多warp多周期双发射指令状态记录电路及方法。
背景技术
统一染色阵列中记分板关于多warp多周期双发射指令发射的条件判定复杂,现有技术中,通过外部接口预译码和译码发射两部分进行双发射指令状态的记录,该设计在整体物理实现时,时序难满足,因此为了解决多warp多周期双发射指令物理实现的时序性能问题,进行了电路结构调整、双发射指令信息记录方法的改善。
发明内容
本发明为解决背景技术中存在的上述技术问题,而提供一种多warp多周期双发射指令状态记录电路及方法,可以提高统一染色器阵列中多warp多周期双发射指令发射的时序性能,而且电路实现简单。
本发明的技术解决方案:本发明为一种多warp多周期双发射指令状态记录电路,其特殊之处在于:所述记录电路包括指令译码模块、指令状态模块和Warp调度模块,其中:
指令译码模块分别与指令状态模块和warp调度模块连接,用于存储预译码的多warp的双发射指令信息;
指令状态模块分别与指令译码模块和warp调度模块连接,实现多warp双发射指令信息待发射和正在发射的状态记录;
warp调度模块分别与指令译码模块和指令状态模块连接,对多个warp的发射请求进行轮询调度。
优选的,双发射指令信息包含源寄存器地址、目的寄存器地址、源寄存器使用、目的寄存器使用、寄存器类型和功能单元类别。
优选的,双发射指令信息为预下发的指令信息。
优选的,指令译码模块中有多个warp对应的多个存储器,每个存储器为双缓冲区,即0缓冲区和1缓冲区,默认操作从0缓冲区开始。
优选的,warp调度模块中,指令有效n个周期,则每n个周期输出1个warp的调度结果,其包含warp号、发射请求有效、调度周期号,其中发射请求有效n个周期,调度周期号最大n-1,n至少为2。
一种实现上述的多warp多周期双发射指令状态记录电路的方法,其特殊之处在于:该方法包括以下步骤:
1)指令译码模块将译码后的指令写入对应warp的存储器时给指令状态模块输出写使能信号,写缓冲区标志信号及多warp的双发射指令信息;根据Warp调度模块的调度结果得出每个存储区的读使能信号,产生多warp读缓冲区标志信号并输出给指令状态模块;
2)指令状态模块中待发射的2条指令信息的记录步骤如下:
2.1)根据指令译码模块的写使能信号和写缓冲区标志信号,将其多warp的双发射指令信息按照缓冲区0和缓冲区1分别将每个warp的双发射指令信息锁存下来,为多warp双缓冲区预发射2条指令信息;
2.2)根据Warp调度模块的调度周期号为第0个周期时,锁存多warp双缓冲区预发射2条指令信息,为多warp双缓冲区待发射的2条指令信息;
3)指令状态模块中正在发射的2条指令信息的记录步骤如下:
3.1)根据指令译码模块的多warp读缓冲区标志信号对多warp双缓冲区待发射2条指令信息进行选择,为多warp的正在发射的2条指令信息;
3.2)根据Warp调度模块的warp号对多warp的正在发射的2条指令信息进行选择,为选择后正在发射的2条指令信息;
3.3)在Warp调度模块的发射请求有效且调度周期号为第0个周期时,对选择后正在发射的2条指令信息进行锁存,有效n个周期,为正在发射的2条指令信息;
4)Warp调度模块对多个warp的发射请求进行轮询调度,将调度结果输出给指令译码模块和指令状态模块。
本发明提供的一种多warp多周期双发射指令状态记录电路及方法,记录电路包括指令译码模块、指令状态模块和Warp调度模块,通过存储预译码的多warp的双发射指令信息;对多warp双发射指令信息待发射和正在发射的状态记录以及对多个warp的发射请求进行轮询调度,实现了多warp多周期双发射指令状态记录,提高了统一染色器阵列中多warp多周期双发射指令发射的时序性能,并且本发明电路中对外接口只有1套双发射指令的译码信息,对外接口简单,电路实现简单,能够很好的满足物理实现的时序性能要求。
附图说明
图1为本发明的电路框图。
具体实施方式
本发明提供了一种多warp多周期双发射指令状态记录电路,该记录电路包括指令译码模块、指令状态模块和Warp调度模块,其中:
指令译码模块分别与指令状态模块和warp调度模块连接,用于存储预译码的多warp的双发射指令信息;双发射指令信息包含源寄存器地址、目的寄存器地址、源寄存器使用、目的寄存器使用、寄存器类型和功能单元类别。双发射指令信息为预下发的指令信息。指令译码模块中有多个warp对应的多个存储器,每个存储器为双缓冲区,即0缓冲区和1缓冲区,默认操作从0缓冲区开始。
指令状态模块分别与指令译码模块和warp调度模块连接,实现多warp双发射指令信息待发射和正在发射的状态记录。
warp调度模块分别与指令译码模块和指令状态模块连接,对多个warp的发射请求进行轮询调度。指令有效n个周期,则每n个周期输出1个warp的调度结果,其包含warp号、发射请求有效、调度周期号,其中发射请求有效n个周期,调度周期号最大n-1,n至少为2。
本发明还提供了一种多warp多周期双发射指令状态记录方法,该方法包括以下步骤:
1)指令译码模块将译码后的指令写入对应warp的存储器时给指令状态模块输出写使能信号,写缓冲区标志信号及多warp的双发射指令信息;根据Warp调度模块的调度结果得出每个存储区的读使能信号,产生多warp读缓冲区标志信号并输出给指令状态模块;
2)指令状态模块中待发射的2条指令信息的记录步骤如下:
2.1)根据指令译码模块的写使能信号和写缓冲区标志信号,将其多warp的双发射指令信息按照缓冲区0和缓冲区1分别将每个warp的双发射指令信息锁存下来,为多warp双缓冲区预发射2条指令信息;
2.2)根据Warp调度模块的调度周期号为第0个周期时,锁存多warp双缓冲区预发射2条指令信息,为多warp双缓冲区待发射的2条指令信息;
3)指令状态模块中正在发射的2条指令信息的记录步骤如下:
3.1)根据指令译码模块的多warp读缓冲区标志信号对多warp双缓冲区待发射2条指令信息进行选择,为多warp的正在发射的2条指令信息;
3.2)根据Warp调度模块的warp号对多warp的正在发射的2条指令信息进行选择,为选择后正在发射的2条指令信息;
3.3)在Warp调度模块的发射请求有效且调度周期号为第0个周期时,对选择后正在发射的2条指令信息进行锁存,有效n个周期,为正在发射的2条指令信息;
4)Warp调度模块对多个warp的发射请求进行轮询调度,将调度结果输出给指令译码模块和指令状态模块。
下面结合附图和具体实施例对本发明的技术方案做进一步详细描述。
参见图1,本发明具体实施例的多warp多周期双发射指令状态记录电路,包含指令译码模块1、指令状态模块2和Warp调度模块3。
指令译码模块1与指令状态模块2、warp调度模块3连接,用于存储预译码的多warp的双发射指令信息,其为预下发的指令信息,包含源寄存器地址、目的寄存器地址、源寄存器使用、目的寄存器使用、寄存器类型、功能单元类别等。
指令状态模块2与指令译码模块1、warp调度模块3连接,实现多warp双发射指令信息待发射和正在发射的状态记录。
warp调度模块3与指令译码模块1、指令状态模块2连接,对多个warp的发射请求进行轮询调度。指令有效n个周期,则每n个周期输出1个warp的调度结果,其包含warp号、发射请求有效、调度周期号,其中发射请求有效n个周期,调度周期号最大n-1,n至少为2。
指令译码模块1中有多个warp对应的多个存储器,每个存储器为双缓冲区,即0缓冲区和1缓冲区,默认操作从0缓冲区开始。
本发明具体实施例的多warp多周期双发射指令状态记录方法,包括以下步骤:
1)指令译码模块1将译码后的指令写入对应warp的存储器时给指令状态模块2输出写使能信号,写缓冲区标志信号及多warp的双发射指令信息;根据Warp调度模块3的调度结果得出每个存储区的读使能信号,产生多warp读缓冲区标志信号并输出给指令状态模块2。
2)指令状态模块2中待发射的2条指令信息的记录步骤如下:
2.1)根据指令译码模块1的写使能信号和写缓冲区标志信号,将其多warp的双发射指令信息按照缓冲区0和缓冲区1分别将每个warp的双发射指令信息锁存下来,为多warp双缓冲区预发射2条指令信息;
2.2)根据Warp调度模块3的调度周期号为第0个周期时,锁存多warp双缓冲区预发射2条指令信息,为多warp双缓冲区待发射的2条指令信息。
3)指令状态模块2中正在发射的2条指令信息的记录步骤如下:
3.1)根据指令译码模块1的多warp读缓冲区标志信号对多warp双缓冲区待发射2条指令信息进行选择,为多warp的正在发射的2条指令信息;
3.2)根据Warp调度模块3的warp号对多warp的正在发射的2条指令信息进行选择,为选择后正在发射的2条指令信息;
3.3)在Warp调度模块3的发射请求有效且调度周期号为第0个周期时,对选择后正在发射的2条指令信息进行锁存,有效n个周期,为正在发射的2条指令信息。
4)Warp调度模块3对多个warp的发射请求进行轮询调度,将调度结果输出给指令译码模块1和指令状态模块2。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细地说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (6)
1.一种多warp多周期双发射指令状态记录电路,其特征在于:所述记录电路包括指令译码模块、指令状态模块和Warp调度模块,其中:
所述指令译码模块分别与指令状态模块和warp调度模块连接,用于存储预译码的多warp的双发射指令信息;
所述指令状态模块分别与指令译码模块和warp调度模块连接,实现多warp双发射指令信息待发射和正在发射的状态记录;
所述warp调度模块分别与指令译码模块和指令状态模块连接,对多个warp的发射请求进行轮询调度。
2.根据权利要求1所述的多warp多周期双发射指令状态记录电路,其特征在于:所述双发射指令信息包含源寄存器地址、目的寄存器地址、源寄存器使用、目的寄存器使用、寄存器类型和功能单元类别。
3.根据权利要求1所述的多warp多周期双发射指令状态记录电路,其特征在于:所述双发射指令信息为预下发的指令信息。
4.根据权利要求1所述的多warp多周期双发射指令状态记录电路,其特征在于:所述指令译码模块中有多个warp对应的多个存储器,每个存储器为双缓冲区,即0缓冲区和1缓冲区,默认操作从0缓冲区开始。
5.根据权利要求1所述的多warp多周期双发射指令状态记录电路,其特征在于:所述warp调度模块中,指令有效n个周期,则每n个周期输出1个warp的调度结果,其包含warp号、发射请求有效、调度周期号,其中发射请求有效n个周期,调度周期号最大n-1,n至少为2。
6.一种实现权利要求1所述的多warp多周期双发射指令状态记录电路的方法,其特征在于:该方法包括以下步骤:
1)指令译码模块将译码后的指令写入对应warp的存储器时给指令状态模块输出写使能信号,写缓冲区标志信号及多warp的双发射指令信息;根据Warp调度模块的调度结果得出每个存储区的读使能信号,产生多warp读缓冲区标志信号并输出给指令状态模块;
2)指令状态模块中待发射的2条指令信息的记录步骤如下:
2.1)根据指令译码模块的写使能信号和写缓冲区标志信号,将其多warp的双发射指令信息按照缓冲区0和缓冲区1分别将每个warp的双发射指令信息锁存下来,为多warp双缓冲区预发射2条指令信息;
2.2)根据Warp调度模块的调度周期号为第0个周期时,锁存多warp双缓冲区预发射2条指令信息,为多warp双缓冲区待发射的2条指令信息;
3)指令状态模块中正在发射的2条指令信息的记录步骤如下:
3.1)根据指令译码模块的多warp读缓冲区标志信号对多warp双缓冲区待发射2条指令信息进行选择,为多warp的正在发射的2条指令信息;
3.2)根据Warp调度模块的warp号对多warp的正在发射的2条指令信息进行选择,为选择后正在发射的2条指令信息;
3.3)在Warp调度模块的发射请求有效且调度周期号为第0个周期时,对选择后正在发射的2条指令信息进行锁存,有效n个周期,为正在发射的2条指令信息;
4)Warp调度模块对多个warp的发射请求进行轮询调度,将调度结果输出给指令译码模块和指令状态模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011399428.XA CN112579173B (zh) | 2020-12-05 | 2020-12-05 | 一种多warp多周期双发射指令状态记录电路及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011399428.XA CN112579173B (zh) | 2020-12-05 | 2020-12-05 | 一种多warp多周期双发射指令状态记录电路及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112579173A true CN112579173A (zh) | 2021-03-30 |
CN112579173B CN112579173B (zh) | 2024-06-14 |
Family
ID=75126908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011399428.XA Active CN112579173B (zh) | 2020-12-05 | 2020-12-05 | 一种多warp多周期双发射指令状态记录电路及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579173B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708474A (zh) * | 2016-12-12 | 2017-05-24 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于dimt架构的统一染色阵列记分板实现架构 |
CN108133452A (zh) * | 2017-12-06 | 2018-06-08 | 中国航空工业集团公司西安航空计算技术研究所 | 一种统一染色器阵列的指令发射处理电路 |
CN108182082A (zh) * | 2017-12-06 | 2018-06-19 | 中国航空工业集团公司西安航空计算技术研究所 | 一种流水处理双发射处理器记分板电路 |
KR101940523B1 (ko) * | 2018-04-30 | 2019-01-21 | 전남대학교산학협력단 | 워프 스케줄링을 위한 장치 및 방법 |
CN110941450A (zh) * | 2019-11-21 | 2020-03-31 | 中国航空工业集团公司西安航空计算技术研究所 | 一种risc处理器的指令发射处理电路 |
CN112579174A (zh) * | 2020-12-05 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种多周期双发射指令可发射的检测电路及方法 |
CN112579172A (zh) * | 2020-12-05 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种非流水单元多周期同指令执行的处理电路及方法 |
-
2020
- 2020-12-05 CN CN202011399428.XA patent/CN112579173B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708474A (zh) * | 2016-12-12 | 2017-05-24 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于dimt架构的统一染色阵列记分板实现架构 |
CN108133452A (zh) * | 2017-12-06 | 2018-06-08 | 中国航空工业集团公司西安航空计算技术研究所 | 一种统一染色器阵列的指令发射处理电路 |
CN108182082A (zh) * | 2017-12-06 | 2018-06-19 | 中国航空工业集团公司西安航空计算技术研究所 | 一种流水处理双发射处理器记分板电路 |
KR101940523B1 (ko) * | 2018-04-30 | 2019-01-21 | 전남대학교산학협력단 | 워프 스케줄링을 위한 장치 및 방법 |
CN110941450A (zh) * | 2019-11-21 | 2020-03-31 | 中国航空工业集团公司西安航空计算技术研究所 | 一种risc处理器的指令发射处理电路 |
CN112579174A (zh) * | 2020-12-05 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种多周期双发射指令可发射的检测电路及方法 |
CN112579172A (zh) * | 2020-12-05 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种非流水单元多周期同指令执行的处理电路及方法 |
Non-Patent Citations (2)
Title |
---|
CHEN ZHAO 等: "Fair and cache blocking aware warp scheduling for concurrent kernel execution on GPU", FUTURE GENERATION COMPUTER SYSTEMS, vol. 112, pages 1093 - 1105, XP086251532, DOI: 10.1016/j.future.2020.05.023 * |
魏艳艳 等: "统一染色器阵列中取指译码单元的设计与实现", 航空计算技术, vol. 50, no. 3, pages 102 - 104 * |
Also Published As
Publication number | Publication date |
---|---|
CN112579173B (zh) | 2024-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9158683B2 (en) | Multiport memory emulation using single-port memory devices | |
US5036493A (en) | System and method for reducing power usage by multiple memory modules | |
US6222767B1 (en) | Synchronous page-mode non-volatile memory with burst order circuitry and method thereof | |
JP2015164090A (ja) | 複数の独立したシリアルリンクメモリ | |
CN111868677B (zh) | 用于具有高速缓冲存储器及多个独立阵列的存储器的接口 | |
US7197590B2 (en) | Method and apparatus for connecting LPC bus and serial flash memory | |
US9052910B2 (en) | Efficiency of short loop instruction fetch | |
CN108133452B (zh) | 一种统一染色器阵列的指令发射处理电路 | |
CN106802870B (zh) | 一种高效的嵌入式系统芯片Nor-Flash控制器及控制方法 | |
US20100325347A1 (en) | Apparatus for controlling nand flash memory | |
CN101149963A (zh) | 多端口存储设备的读操作 | |
US20090094435A1 (en) | System and method for cache access prediction | |
CN103413569B (zh) | 一读且一写静态随机存储器 | |
US8914612B2 (en) | Data processing with time-based memory access | |
KR950033847A (ko) | 프로세서장치에 있어서의 저장명령의 지연기록을 위한 방법과 장치 | |
TWI533135B (zh) | 記憶體存取方法、記憶體存取控制方法、記憶體裝置與記憶體控制器 | |
KR20090007412A (ko) | 저장 용량이 큰 멀티 미디어 카드 | |
CN112579173A (zh) | 一种多warp多周期双发射指令状态记录电路及方法 | |
CN111158753A (zh) | 具有数据预取功能的Flash控制器结构及其实现方法 | |
US7111127B2 (en) | System for supporting unlimited consecutive data stores into a cache memory | |
JPH04228187A (ja) | ランダム・アクセス・メモリ・アレイ | |
JPH11316681A (ja) | 命令バッファへのロ―ド方法、装置およびプロセッサ | |
US7047363B2 (en) | Cache memory and control method thereof | |
CN101494090B (zh) | 存储器存取控制方法 | |
JP3180953B2 (ja) | トレース情報採取機構 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |