CN103019976A - 基于fpga的hpi总线上位机接口 - Google Patents
基于fpga的hpi总线上位机接口 Download PDFInfo
- Publication number
- CN103019976A CN103019976A CN 201110283880 CN201110283880A CN103019976A CN 103019976 A CN103019976 A CN 103019976A CN 201110283880 CN201110283880 CN 201110283880 CN 201110283880 A CN201110283880 A CN 201110283880A CN 103019976 A CN103019976 A CN 103019976A
- Authority
- CN
- China
- Prior art keywords
- hpi
- interface
- signal
- bus
- state
- 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.)
- Pending
Links
Images
Abstract
本发明属于总线接口领域,具体涉及一种基于FPGA的HPI总线上位机接口。目的使用FPGA结构实现兼容TI的TMS320C6000全系列DSP的HPI接口。包括:底层、中间层、顶层;底层功能是产生HPI接口控制信号:HCNTL[1:0]、HHWIL、HRW,并控制HPI寄存器的读写访问时序;中间层功能是实现基本的HPI接口访问流程;顶层功能是产生控制逻辑,控制中间层中流程的跳转实现复杂的数据传输功能。本发明的优点是本发明的底层和中间层实现兼容TI的TMS320C6000全系列DSP的HPI接口,具有通用性。顶层通过DSP标准HPI接口信号HINT和DSPINT与中间层交联,与底层没有信号耦合,保证了对于不同应用,顶层可以根据任务或者应用定制,同时只需要适应性的修改中间层,底层完全不需要修改,具有极高的灵活性。
Description
技术领域
本发明属于总线接口领域,涉及TI的TMS320C64X系列DSP的HPI总线上位机接口的FPGA实现。
背景技术
雷达脉冲信号分选技术是当前电子战的核心问题,也是我们国家近几年比较重视的国防科技领域。其中,使用到了TMS320C6000系列DSP,HPI(host port interface)总线是TI的TMS320C6000系列DSP配置的并行接口。目前,需要实现解决使用FPGA实现总线的问题,以用于FPGA与此系列DSP的通信。
HPI总线简介
1.1简介
HPI(host port interface)总线是TI的TMS320C6000系列DSP配置的并行接口。上位机(host)掌握该接口的主控权,通过对HPI控制寄存器(HPIC)、HPI地址寄存器(HPIA)和HPI数据寄存器(HPID)的控制,借助DSP片内的DMA控制器实现对DSP的存储器和外设资源访问。
1.2接口信号
TMS320C64X的HPI总线有HPI16和HPI32两种数据传输模式,在本发明中采用HPI16模式,并具备独立的地址、数据线,所以将/HAS信号固定接高电平。本发明涉及到的HPI总线接口信号如下:
HD[15:0]:数据总线;
HCNTL[1:0]:HPI访问类型控制信号;
HHWIL:字节选择信号;
HR/W:读写选择信号;
/HCS、/HDS[1:2]:数据选通信号;
/HDRY:HPI准备好信号;
/HINT:DSP发给上位机的中断信号。
1.3操作类型
上位机对HPI总线的访问类型如下:
■初始化HPIC寄存器
■初始化HPIA寄存器
■从HPID寄存器读取/写入数据
其中数据传输模式有4种:
■带地址自增的读操作;
■带地址自增的写操作;
■不带地址自增的读操作;
■不带地址自增的写操作。
发明内容
本发明的目的是使用FPGA结构实现兼容TI的TMS320C6000全系列DSP的HPI接口。
本发明是这样实现的:一种基于FPGA的HPI总线上位机接口,采用分层设计,包括:底层、中间层、顶层;
底层功能是产生HPI接口控制信号:HCNTL[1:0]、HHWIL、HRW,并控制HPI寄存器的读写访问时序;
中间层功能是实现基本的HPI接口访问流程,即:初始化HPIC寄存器、初始化HPIA寄存器、读写HPID寄存器;
顶层功能是产生控制逻辑,控制中间层中流程的跳转实现复杂的数据传输功能;
底层逻辑在FPGA内部通过状态机实现,该状态机总共st1~st9共9个状态;st1状态接收中间层下发的RAS(Registers Access Start)信号开始状态流转;st2状态是控制信号HCNTL[1:0]、/HAS、HHWIL信号开始建立的状态;st3状态锁存HCNTL[1:0]、/HAS、HHWIL信号的状态,输出到DSP的HPI接口,并产生CSL(control Signals Latched)信号反馈给中间层;st4状态查询DSP输出的HRDY信号状态,一旦数据准备好,在st5状态进行HPI寄存器访问,将HPI寄存器数据读入数据总线HD[15:0],或将数据总线HD[15:0]上的数据写入HPI寄存器(HPIA、HPIC、HPID);st6、st7状态释放数据总线;st8状态控制第一个半字,即数据总线低16位和第二个半字,即数据总线高16位的切换;st9状态完整的HPI寄存器访问周期结束,并产生RAF(Registers Access Finished)信号反馈给中间层;
中间层产生RAS信号,控制底层状态机的运转,并接收底层状态机反馈的CSL和RAF信号,实现基本的HPI接口访问流程;
顶层功能如下:在进行HPI总线控制时,DSP内部RAM中存放控制指令,DSP通过HINT中断信号通知顶层,顶层将控制指令通过HPI总线读入FPGA内部的双口RAM,并从双口RAM取出指令进行译码,根据指令译码结果进行相应的HPI总线访问控制;
反之,FPGA内部采集电路将采集到的雷达脉冲数据存放到内部FIFO内,当FIFO数据满时,顶层通过DSPINT信号通知DSP,借助HPI总线将FIFO数据写入SDRAM,DSP从SDRAM中取出雷达脉冲数据进行信号分选工作。
本发明的优点是:本发明的底层和中间层实现兼容TI的TMS320C6000全系列DSP的HPI接口,具有通用性,移植性好,已经在与TMS320C6416、TMS320C6701、TMS320C6713这3种DSP芯片的HPI接口通信中得到验证;其顶层实现可以根据任务或者应用定制,具有极高的灵活性;将数据采集、处理和传输功能集成于单片FPGA内,提高了系统的集成度,降低了软件设计的复杂度;采用该发明的HPI接口可以提供极高的峰值数据传输率,适用于高速数据传输领域。
本发明目前已应用到某型号任务中,已经通过了试验及工程实践验证。
附图说明
图1是系统框图;
图2是底层状态机流程图;
图3是HPI16读时序图;
图4是HPI16写时序;
图5是HPI接口访问流程图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步的说明:
某型飞机雷达告警设备国产化涉及雷达信号分选技术,在硬件设计中采用DSP+FPGA方式:采用Xilinx公司Spartan-3系列FPGA(型号为XC3S1500)进行雷达信号的采集,采用TI公司的TMS320C64X系列DSP(型号为TMS320C6416)实现雷达信号的分选算法。HPI总线是FPGA和DSP之间的指令和数据传输通路,其中FPGA作为HPI总线的上位机,除实现雷达信号采集功能外,还需具备HPI总线上位机接口功能,该功能在FPGA中采用Verilog HDL实现。
本发明的系统框图如图1所示:
HPI总线的上位机接口实现可以分为三层:底层、中间层、顶层。
底层功能是产生HPI接口控制信号(HCNTL[1:0]、HHWIL、HRW),并控制HPI寄存器的读写访问时序。
中间层功能是实现基本的HPI接口访问流程,即:初始化HPIC寄存器、初始化HPIA寄存器、读写HPID寄存器。
顶层功能是产生控制逻辑,进而控制基本访问流程的跳转实现复杂的数据传输功能。
底层逻辑在FPGA内部通过状态机实现,该状态机总共st1~st9共9个状态。st1状态接收中间层下发的RAS(Registers Access Start)信号开始状态流转;st2状态是控制信号HCNTL[1:0]、/HAS、HHWIL信号开始建立的状态,经过上述状态,满足这些控制信号对建立时间的长度要求;st3状态锁存HCNTL[1:0]、/HAS、HHWIL信号的状态,输出到DSP的HPI接口,并产生CSL(control Signals Latched)信号反馈给中间层;st4状态查询DSP输出的HRDY信号状态,一旦数据准备好,在st5状态进行HPI寄存器访问,将HPI寄存器数据读入数据总线HD[15:0],或将数据总线HD[15:0]上的数据写入HPI寄存器(HPIA、HPIC、HPID);st6、st7状态释放数据总线,经过上述步骤,完全释放数据总线;st8状态控制第一个半字,即数据总线低16位和第二个半字,即数据总线高16位的切换,通过控制信号线HHWIL的状态实现;st9状态完整的HPI寄存器访问周期结束,并产生RAF(Registers Access Finished)信号反馈给中间层。
其流程图见图2,最终形成的读写时序图见图3和图4,注:图3、图4中/HSTROBE=[NOT(/HDS1 XOR/HDS2)]OR/HCS。
TMS320C6416的HPI接口时序参数详见TI公司编号为SPRS146M的参考文献。
该型DSP最高工作频率720MHz,其时钟周期P=1.4ns,由此可知底层状态机最小时钟周期为4P/2=2.8ns,最高工作频率360MHz,但是受制于Spartan-3系列FPGA的326MHz最高工作时钟,底层状态机最高工作频率为326MHz,HPI总线峰值数据传输率为326/13×32/8=100MB/S。
经验证,底层状态机可以稳定工作于326MHz的时钟下,满足SPRS146M的参考文献中关于HPI接口的约束时序。
中间层产生RAS信号,控制底层状态机的运转,并接收底层状态机反馈的CSL和RAF信号,实现基本的HPI接口访问流程,其流程图如图5所示;
本发明的顶层功能如下:DSP内部RAM中存放控制指令,DSP通过HINT中断信号通知顶层,顶层将控制指令通过HPI总线读入FPGA内部的双口RAM,并从双口RAM取出指令进行译码,根据指令译码结果进行相应的HPI总线访问控制。FPGA内部采集电路将采集到的雷达脉冲数据存放到内部FIFO内,当FIFO数据满时,顶层通过DSPINT信号通知DSP,借助HPI总线将FIFO数据写入SDRAM,应用程序从SDRAM中取出雷达脉冲数据进行信号分选工作。
已经具体应用到某型飞机雷达告警设备国产化涉及雷达信号分选技术,在硬件设计中采用DSP+FPGA方式:采用Xilinx公司Spartan-3系列FPGA(型号为XC3S1500)进行雷达信号的采集,采用TI公司的TMS320C64X系列DSP(型号为TMS320C6416)实现雷达信号的分选算法。HPI总线是FPGA和DSP之间的指令和数据传输通路,其中FPGA作为HPI总线的上位机,除实现雷达信号采集功能外,还具备HPI总线上位机接口功能,该功能在FPGA中采用Verilog HDL实现。
Claims (1)
1.一种基于FPGA的HPI总线上位机接口,其特征在于:采用分层设计,包括以下三个层次:底层、中间层、顶层;
底层功能是产生HPI接口控制信号:HCNTL[1:0]、HHWIL、HRW,并控制HPI寄存器的读写访问时序;
中间层功能是实现基本的HPI接口访问流程,即:初始化HPIC寄存器、初始化HPIA寄存器、读写HPID寄存器;
顶层功能是产生控制逻辑,控制中间层中流程的跳转实现复杂的数据传输功能;
底层逻辑在FPGA内部通过状态机实现,该状态机总共st1~st9共9个状态;st1状态接收中间层下发的RAS(Registers Access Start)信号开始状态流转;st2状态是控制信号HCNTL[1:0]、/HAS、HHWIL信号开始建立的状态,满足这些控制信号的建立时间的时序要求;st3状态锁存HCNTL[1:0]、/HAS、HHWIL信号的状态,输出到DSP的HPI接口,并产生CSL(control SignalsLatched)信号反馈给中间层;st4状态查询DSP输出的HRDY信号状态,一旦数据准备好,在st5状态进行HPI寄存器访问,将HPI寄存器数据读入数据总线HD[15:0],或将数据总线HD[15:0]上的数据写入HPI寄存器HPIA、HPIC、HPID;st6、st7状态释放数据总线;st8状态控制第一个半字,即数据总线低16位和第二个半字,即数据总线高16位的切换;st9状态完整的HPI寄存器访问周期结束,并产生RAF(Registers Access Finished)信号反馈给中间层;
中间层产生RAS信号,控制底层状态机的运转,并接收底层状态机反馈的CSL和RAF信号,实现基本的HPI接口访问流程;
顶层功能如下:在进行HPI总线控制时,DSP内部RAM中存放控制指令,DSP通过HINT中断信号通知顶层,顶层将控制指令通过HPI总线读入FPGA内部的双口RAM,并从双口RAM取出指令进行译码,根据指令译码结果进行相应的HPI总线访问控制;反之,FPGA内部采集电路将采集到的雷达脉冲数据存放到内部FIFO内,当FIFO数据满时,顶层通过DSPINT信号通知DSP,借助HPI总线将FIFO数据写入SDRAM,DSP从SDRAM中取出雷达脉冲数据进行信号分选工作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110283880 CN103019976A (zh) | 2011-09-22 | 2011-09-22 | 基于fpga的hpi总线上位机接口 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110283880 CN103019976A (zh) | 2011-09-22 | 2011-09-22 | 基于fpga的hpi总线上位机接口 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103019976A true CN103019976A (zh) | 2013-04-03 |
Family
ID=47968600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110283880 Pending CN103019976A (zh) | 2011-09-22 | 2011-09-22 | 基于fpga的hpi总线上位机接口 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103019976A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593313A (zh) * | 2013-11-12 | 2014-02-19 | 中国电子科技集团公司第四十一研究所 | 一种提高hpi接口访问速度与准确度的方法及装置 |
CN105824696A (zh) * | 2016-03-18 | 2016-08-03 | 同济大学 | 一种具有定时中断功能的处理器装置 |
CN106597920A (zh) * | 2016-11-16 | 2017-04-26 | 西安电子科技大学 | 基于nios嵌入式处理器控制hpi接口的控制系统 |
CN106776458A (zh) * | 2016-12-13 | 2017-05-31 | 积成电子股份有限公司 | 基于fpga和hpi的dsp间的通信装置及通信方法 |
CN111679599A (zh) * | 2020-05-22 | 2020-09-18 | 中国航空工业集团公司西安航空计算技术研究所 | 一种cpu与dsp数据高可靠交换方法 |
CN115129653A (zh) * | 2022-08-25 | 2022-09-30 | 中国电子科技集团公司第五十八研究所 | 一种基于hpi的fpga与dsp通信系统 |
-
2011
- 2011-09-22 CN CN 201110283880 patent/CN103019976A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593313A (zh) * | 2013-11-12 | 2014-02-19 | 中国电子科技集团公司第四十一研究所 | 一种提高hpi接口访问速度与准确度的方法及装置 |
CN103593313B (zh) * | 2013-11-12 | 2016-04-27 | 中国电子科技集团公司第四十一研究所 | 一种提高hpi接口访问速度与准确度的方法及装置 |
CN105824696A (zh) * | 2016-03-18 | 2016-08-03 | 同济大学 | 一种具有定时中断功能的处理器装置 |
CN105824696B (zh) * | 2016-03-18 | 2019-07-05 | 同济大学 | 一种具有定时中断功能的处理器装置 |
CN106597920A (zh) * | 2016-11-16 | 2017-04-26 | 西安电子科技大学 | 基于nios嵌入式处理器控制hpi接口的控制系统 |
CN106597920B (zh) * | 2016-11-16 | 2019-07-26 | 西安电子科技大学 | 基于nios嵌入式处理器控制hpi接口的控制系统 |
CN106776458A (zh) * | 2016-12-13 | 2017-05-31 | 积成电子股份有限公司 | 基于fpga和hpi的dsp间的通信装置及通信方法 |
CN106776458B (zh) * | 2016-12-13 | 2020-04-10 | 积成电子股份有限公司 | 基于fpga和hpi的dsp间的通信装置及通信方法 |
CN111679599A (zh) * | 2020-05-22 | 2020-09-18 | 中国航空工业集团公司西安航空计算技术研究所 | 一种cpu与dsp数据高可靠交换方法 |
CN111679599B (zh) * | 2020-05-22 | 2022-01-25 | 中国航空工业集团公司西安航空计算技术研究所 | 一种cpu与dsp数据高可靠交换方法 |
CN115129653A (zh) * | 2022-08-25 | 2022-09-30 | 中国电子科技集团公司第五十八研究所 | 一种基于hpi的fpga与dsp通信系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103019976A (zh) | 基于fpga的hpi总线上位机接口 | |
CN109613491B (zh) | 一种基于fpga的高速信号采集存储及回放系统 | |
CN101350036B (zh) | 一种高速实时数据采集系统 | |
CN103336745B (zh) | 一种基于ssd缓存的fc hba及其设计方法 | |
CN101257288B (zh) | 一种可配置参数的有限冲激响应数字滤波器 | |
CN104899167A (zh) | 一种基于fpga的便携式高速数据采集方法 | |
CN205959137U (zh) | 基于申威1610处理器的大数据服务器主板 | |
KR20130009926A (ko) | 유연한 플래시 명령어 | |
CN104298645A (zh) | 一种可灵活配置的可编程片上系统芯片及其启动配置方法 | |
CN104570855A (zh) | 一种基于fpga的数据采集系统及方法 | |
CN104991874B (zh) | 一种基于scst的多控制器存储设备alua配置方法 | |
CN201247466Y (zh) | 高速实时数据采集系统 | |
KR20130009928A (ko) | 플래시 인터페이스의 효율적인 활용 | |
CN209103184U (zh) | 一种国产化主控平台 | |
CN103678078B (zh) | 一种调试系统及方法 | |
CN105825880B (zh) | 用于ddr控制器的访问控制方法、装置及电路 | |
CN101833534A (zh) | Fpga高性能运算pci卡 | |
CN102662894A (zh) | 总线从单元通用接口 | |
CN105893036A (zh) | 一种嵌入式系统的兼容式加速器扩展方法 | |
CN104717676A (zh) | 一种基于pxi仪器的无线通信信号监测分析方法及系统 | |
CN201909847U (zh) | 基于vxi接口的双通道数字信号采集装置 | |
CN205787772U (zh) | 基于fpga实时控制的高速数据采集系统 | |
CN201654776U (zh) | Fpga高性能运算pci卡 | |
CN201773402U (zh) | PC104 plus接口多通道高速同步数据采集系统 | |
CN202495036U (zh) | 总线从单元通用接口 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130403 |