基于NIOS嵌入式处理器控制HPI接口的控制系统技术方案

技术编号:15255254 阅读:113 留言:0更新日期:2017-05-02 22:45
本发明专利技术公开了一种基于NIOS嵌入式处理器控制HPI接口的控制系统,设置有:NIOS嵌入式处理器,HPI控制逻辑模块,应用根据提供的HPI的时序要求,使用状态机实现流程的控制;HPI接口,是连接到主机并与主机进行通信的并行接口;用于实现对DSP芯片与其他总线或者CPU进行通信和数据交换;主机或其他主控芯片通过HPI接口实现与DSP芯片的片内存储器进行数据或者信息的交换。本发明专利技术实现对HPI简便的控制;可以实现灵活的HPI控制,通过简单的控制函数即可实现对HPI方便的控制,并提供较大数据的缓存作用;可以大大简化了对HPI接口设备的控制,加快产品开发周期,简化设计流程。

Control system of HPI interface based on NIOS embedded processor

The invention discloses a control system, NIOS embedded processor control based on HPI interface is provided with NIOS embedded processor, HPI control logic module, application according to the timing provided HPI requirements, control the use of state machine to achieve the process; the HPI interface is connected to the main machine and parallel interface communication with the host; for the realization of the DSP chip and the other bus or CPU for communication and data exchange; exchange host or other main control chip through the HPI interface chip memory and DSP chip for data or information. The invention of HPI simple control; can realize flexible HPI control, to achieve control of HPI through convenient control function can be simple, and provide a greater role in the data cache; can greatly simplify the control of the HPI interface device, speed up the product development cycle, simplify the design process.

【技术实现步骤摘要】

本专利技术属于嵌入式接口控制
,尤其涉及一种基于NIOS嵌入式处理器控制HPI接口的控制系统
技术介绍
HPI是HOSTPORTINTERFACE的简称。HPI是一个与主机通信的并行接口,主要用于DSP与其他总线或CPU进行通信。NiosⅡ嵌入式处理器是ALTERA公司推出的采用哈佛结构、具有32位指令集的第二代片上可编程的软核处理器,其最大优势和特点是模块化的硬件结构,以及由此带来的灵活性和可裁减性。现在实现控制HPI的方法,在FPGA中主要通过VHDL或Verilog等硬件描述语言实现对含有HPI接口的设备进行控制;灵活性差,模块抽象层次低,开发难度大。还有一种就是通过单片机或者ARM等处理器实现对HPI接口的控制,硬件成本大,开发流程复杂。综上所述,现在实现控制HPI的方法存在灵活性差,模块抽象层次低,开发难度大,硬件成本大,开发流程复杂。
技术实现思路
本专利技术的目的在于提供一种基于NIOS嵌入式处理器控制HPI接口的控制系统,旨在解决现在实现控制HPI的方法存在灵活性差,模块抽象层次低,开发难度大,硬件成本大,开发流程复杂的问题。本专利技术是这样实现的,一种基于NIOS嵌入式处理器控制HPI接口的控制系统,所述基于NIOS嵌入式处理器控制HPI接口的控制系统设置有:NIOS嵌入式处理器,包括读FIFO和写FIFO信号,NIOS嵌入式处理器给HPI控制逻辑模块的控制信号,以及HPI控制逻辑模块给NIOS嵌入式处理器的反馈信号;HPI控制逻辑模块,根据提供的HPI的时序要求,使用状态机实现流程的控制;HPI接口,连接到主机并与主机进行通信的并行接口;用于实现对DSP芯片与其他总线或者CPU进行通信和数据交换;主机或其他主控芯片通过HPI接口实现与DSP芯片的片内存储器进行数据或者信息的交换。进一步,所述读FIFO和写FIFO的控制信号有:TFIFO_FULL:写FIFO的满信号;TFIFO_WR_CLK:写FIFO的写时钟;TFIFO_WR_EN:写FIFO使能信号;TFIFO_WR_DATA[15:0]:给写FIFO的中送入数据;RFIFO_RD_CLK:读FIFO的时钟;RFIFO_RD_EN:读FIFO的使能信号;RFIFO_EMPTY:读FIFO的空信号,即将读FIFO读空是有效;RFIFO_RD_DATA[15:0]:从读FIFO中读取的数据;RFIFO_WRUSEDW[15:0]:读FIFO中所存数据的个数;其中NIOS给HPI控制逻辑模块的控制信号有:HPI_EN:HPI的使能信号;高电平有效;HPI_LOAD:给HPI的加载信号,在进行加载程序时进行调用;HPI_WR:控制HPI控制逻辑模块进行读写操作,高电平为读,低电平为写;START_ADDR[31:0]:进行操作的目标地址的起始地址,长度为32位;END_ADDR[31:0]:进行操作目标地址的结束地址,长度为32位;HPI控制逻辑模块的反馈信号包括:HPI_LOAD_FINISH:程序加载完成之后的反馈信号;HPI_RD_FINISH:HPI控制逻辑模块完成读操作之后的反馈信号;HPI_WR_FINISH:HPI控制逻辑模块完成写操作之后的反馈信号。进一步,所述HPI控制逻辑模块包括,读FIFO即图中的RFIFO,写FIFO即图中的TFIFO,以及核心控制模块即图中的HPI核心控制模块;读FIFO和写FIFO提供数据缓存;核心控制模块实现和HPI接口的交互,对HPI控制逻辑模块信号进行分类,是NIOS嵌入式处理器给HPI控制的信号。进一步,所述HPI控制逻辑模块,分为三个部分,HPI读单元,HPI写单元,HPI程序加载单元;HPI读单元,为完成读操作,读操作首先初始化HPI控制逻辑模块,然后设定读操作的地址范围,即设定起始地址和结束地址;完成操作之后,使能HPI控制逻辑模块的读,等待读操作完成,从读FIFO中即可读出刚才设定的地址范围的数据;HPI写单元,为完成写操作,写操作首先初始化HPI控制逻辑模块,然后设定读操作的地址范围,即设定起始地址和结束地址;完成操作之后,将需要写入的数据写入到写FIFO中即TFIFO中,完成之后,使能HPI写操作,等待HPI写完成信号直到HPI写结束;HPI程序加载单元,完成HPI程序加载,首先初始化HPI控制逻辑模块,然后将解析之后的程序,通过HPI写操作,写入到目标地址,然后使能HPI程序加载,等待HPI加载完成信号;完成HPI程序加载操作。本专利技术的另一目的在于提供一种所述基于NIOS嵌入式处理器控制HPI接口的控制系统的控制方法,所述控制方法包括:NIOS嵌入式处理器通过调用相关函数实现管脚信号控制HPI控制逻辑模块,然后HPI控制逻辑模块通过状态机跳转,满足HPI接口实现对HPI接口实现控制。进一步,所述HPI控制逻辑模块对HPI接口的信号包括:数据线HD:HPI的数据线,在复用模式下,数据线的宽度为CPU位宽的一半;一个HPI访问分为高低半字两次访问;HCNTL:HCNTL0/1选择访问的HPI寄存器;HWIL:控制访问寄存器的高低半字,必须先高后低;HR/W:指示对HPI寄存器进行读,还是写;HCS:HPI的片选信号;HDS1HDS2:两个信号和HCS信号根据图中逻辑产生内部HSTORBE信号,其逻辑关系是要求HDS1和HDS2信号相反,HCS低有效;HSTROBE下降沿的时间点反应的是三个信号中最后跳变的信号;HPI在HSTROBE的下降沿采样控制信号HR/W;HRDY:HPI的输出信号,指示当前操作状态,用做硬件流量控制握手信号;HINT:通过HPI,主机与DSP之间互发中断,HINT是HPI送给主机的中断信号;ALE:存在于地址,数据线复用的主机上用来指示地址信号周期;BE:ByteEnable信号。进一步,通过状态及跳转,根据HPI接口提供的时序图,在每个状态作相应的动作,每个状态机相应的操作如下:(1)初始化将HCS拉低,HDS1,HDS2置高;然后跳转到(2);(2)将HDS2拉低;跳转到(3);(3)判断是否HPI空闲,即检测HRDY信号是否为低,如果不为低,则在State3等待,如果为低,则将数据送到HPI的数据线HD,更新地址和计数,然后跳转到(4);(4)将HDS2拉高。并跳转到(5);(5)将HCS拉高,病跳转到(6);(6)判断是否读写到结束地址,如果没有到达,则跳转到State1,否则给NIOS嵌入式处理器发送HPI_WR_FINISH信号,并在State6中进行循环等待。进一步,所述NIOS嵌入式处理器包括:HPI_Init()函数,用来初始化HPI控制逻辑模块,信号操作有,将HPI_EN信号拉低,HPI_RST信号拉低;HPI_Write()函数,用于执行写操作,调用HPI_RST()函数,使HPI控制逻辑模块复位,之后调用HPI_SET_WR()设定HPI控制逻辑模块执行写操作;调用SET_HPI_START_ADDR()函数设定写操作的起始地址,然后调用SET_HPI_END_ADDR()函数,设定写操作的结束地址;完成设定后,调用FIFO_WR_DATA(data)函数将需要写入的数据,写入到HPI的写FIFO中,写完数据之后本文档来自技高网...

【技术保护点】
一种基于NIOS嵌入式处理器控制HPI接口的控制系统,其特征在于,所述基于NIOS嵌入式处理器控制HPI接口的控制系统设置有:NIOS嵌入式处理器,包括读FIFO和写FIFO信号,NIOS嵌入式处理器给HPI控制逻辑模块的控制信号,以及HPI控制逻辑模块给NIOS嵌入式处理器的反馈信号;HPI控制逻辑模块,根据提供的HPI的时序要求,使用状态机实现流程的控制;HPI接口,连接到主机并与主机进行通信的并行接口;用于实现对DSP芯片与其他总线或者CPU进行通信和数据交换;主机或其他主控芯片通过HPI接口实现与DSP芯片的片内存储器进行数据或者信息的交换。

【技术特征摘要】
1.一种基于NIOS嵌入式处理器控制HPI接口的控制系统,其特征在于,所述基于NIOS嵌入式处理器控制HPI接口的控制系统设置有:NIOS嵌入式处理器,包括读FIFO和写FIFO信号,NIOS嵌入式处理器给HPI控制逻辑模块的控制信号,以及HPI控制逻辑模块给NIOS嵌入式处理器的反馈信号;HPI控制逻辑模块,根据提供的HPI的时序要求,使用状态机实现流程的控制;HPI接口,连接到主机并与主机进行通信的并行接口;用于实现对DSP芯片与其他总线或者CPU进行通信和数据交换;主机或其他主控芯片通过HPI接口实现与DSP芯片的片内存储器进行数据或者信息的交换。2.如权利要求1所述的基于NIOS嵌入式处理器控制HPI接口的控制系统,其特征在于,所述读FIFO和写FIFO的控制信号有:TFIFO_FULL:写FIFO的满信号;TFIFO_WR_CLK:写FIFO的写时钟;TFIFO_WR_EN:写FIFO使能信号;TFIFO_WR_DATA[15:0]:给写FIFO的中送入数据;RFIFO_RD_CLK:读FIFO的时钟;RFIFO_RD_EN:读FIFO的使能信号;RFIFO_EMPTY:读FIFO的空信号,即将读FIFO读空是有效;RFIFO_RD_DATA[15:0]:从读FIFO中读取的数据;RFIFO_WRUSEDW[15:0]:读FIFO中所存数据的个数;其中NIOS给HPI控制逻辑模块的控制信号有:HPI_EN:HPI的使能信号;高电平有效;HPI_LOAD:给HPI的加载信号,在进行加载程序时进行调用;HPI_WR:控制HPI控制逻辑模块进行读写操作,高电平为读,低电平为写;START_ADDR[31:0]:进行操作的目标地址的起始地址,长度为32位;END_ADDR[31:0]:进行操作目标地址的结束地址,长度为32位;HPI控制逻辑模块的反馈信号包括:HPI_LOAD_FINISH:程序加载完成之后的反馈信号;HPI_RD_FINISH:HPI控制逻辑模块完成读操作之后的反馈信号;HPI_WR_FINISH:HPI控制逻辑模块完成写操作之后的反馈信号。3.如权利要求1所述的基于NIOS嵌入式处理器控制HPI接口的控制系统,其特征在于,所述HPI控制逻辑模块包括,读FIFO即图中的RFIFO,写FIFO即图中的TFIFO,以及核心控制模块即图中的HPI核心控制模块;读FIFO和写FIFO提供数据缓存;核心控制模块实现和HPI接口的交互,对HPI控制逻辑模块信号进行分类,是NIOS嵌入式处理器给HPI控制的信号。4.如权利要求1所述的基于NIOS嵌入式处理器控制HPI接口的控制系统,其特征在于,所述HPI控制逻辑模块,分为三个部分,HPI读单元,HPI写单元,HPI程序加载单元;HPI读单元,为完成读操作,读操作首先初始化HPI控制逻辑模块,然后设定读操作的地址范围,即设定起始地址和结束地址;完成操作之后,使能HPI控制逻辑模块的读,等待读操作完成,从读FIFO中即可读出刚才设定的地址范围的数据;HPI写单元,为完成写操作,写操作首先初始化HPI控制逻辑模块,然后设定读操作的地址范围,即设定起始地址和结束地址;完成操作之后,将需要写入的数据写入到写FIFO中即TFIFO中,完成之后,使能HPI写操作,等待HPI写完成信号直到HPI写结束;HPI程序加载单元,完成HPI程序加载,首先初始化HPI控制逻辑模块,然后将解析之后的程序,通过HPI写操作,写入到目标地址,然后使能HPI程序加载,等待HPI加载完成信号;完成HPI程序加载操作。5.一种如权利要求1所述基于NIOS嵌入式处理器控制HPI接口的控制系统的控制方法,其特征在于,所述控制方法包括:NIOS嵌入式处理器通过调用相关函数实现管脚信号控制HPI控制逻辑模块,然后HPI控制逻辑模块通过状态机跳转,满足HPI接口实现对HPI接口实现控制。6.如权利要求5所述的控制方法,其特征在于,所述HPI控制逻辑模块对HPI接口的信号包括:数据线HD:HPI的数据线,在复用模式下,数据线的宽度为CPU位宽的一半;一个HPI访问分为高低半字两次访问;HCNTL:HCNTL0/1选择访问的HPI寄存器;HWIL:控制访问寄存器的高低半字,必须先高后低;HR/W:指示对HPI寄存器进行读,还是写;HCS:HPI的片选信号;HDS1HDS2:两个信号和HCS信号根据图中逻辑产生内部HSTORBE信号,其逻辑关系是要求HDS1和HDS2信号相反,HCS低有效;HSTROBE下降沿的时间点反应的是三个信号中最后跳变的信号;HPI在HSTROBE的下降沿采样控制信号HR/W;HRDY:HPI的输出信号,指示当前操作状态,用做硬件流量控制握手信号;HINT:通过HPI,主机与DSP之间互发中断,HINT是HPI送给主机的中断信号;ALE:存在于地址,数据线复用的主机上用来指示地址信号周期;BE:ByteEnable信号。7.如权利要求5所述的控制方法,其特征在于,通过状态及跳转,根据HPI接口提供的时序图,在每个状态作相应的动作,每个状态机相应的操作如下:(1)初始化将HCS拉低,HDS1,HDS2置高;然后跳转到(2);(2)将HDS2拉低;跳转到(3);(3)判断是否HPI空闲,即检测HRDY信号是否为低,如果不为低,则在State3等待,如果为低,则将数据送到HPI的数据线HD,更新地址和计数,然后跳转到(4);(4)将HDS2拉高;并跳转到(5);(5)将HCS拉高,病跳转到...

【专利技术属性】
技术研发人员:刘锦辉温正阳黄钊蔡伟文苏文牛振红
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1