FPGA器件的在线配置方法
期的时钟(具体周期数与DCLK的频率有关),确保目标芯片被正确初始化,进入用户工作模式。
Altera的MAX+PLUSII或QuartusII开发工具可以生成多种配置或编译文件,用于不同配置方法的配置系统,而对于不同系列的目标器件配置数据的大小也不同,配置文件的大小一般有.rbf文件决定。.rbf文件即二进制文件。该文件包括所有的配置数据,一个字节的.rbf文件有8位配置数据,每一字节在配置时最低位最先被装载。微处理器可以读取这个二进制文件,并把它装载到目标器件中。Altera提供的软件工具不自动生成.rbf文件,须按照下面的步骤生成:①在MAX+PLUSII编译状态,选择文件菜单的变换SRAM目标文件命令;②在变换SRAM目标文件对话框,指定要转换的文件并且选择输出文件格式为.rbf(Sequential),然后确定。
2配置电路结构和原理
2.1串行通信的电路结构和原理
PC机与单片机的接口如图2所示。AT89C2051单片机通过串行口直接接收PC机传送来的串行数据,然后把接收到的数据存入数据存储器。由于PC机的串行口都是RS-232C标准的接口,所以,其输入输出在电平上和采用TTL电平的AT89C2051在接口时会产生电平不同的问题。为了解决这个问题,在PC机和单片机的串行通信电路中加入了MAX232芯片,以实现TTL电平和RS-232C接口电平之间的转换。这样PC机和AT89C2051单片机进行串行通信时就可以顺利进行了。除了电路结构之外,要实现PC机和AT89C2051之间的通信,还需要有合适的通信软件。
2.2ICR控制电路原理
ICR电路原理如图3所示。AT24C256用来存储FPGA的配置数据。
ICR控制电路的工作过程为:经MAXPLUSII编译生产的配置文件(.sof)通过格式转换成为(.rbf)。然后,利用PC机端的控制程序,通过PC机的串行通信口,经U1存储在U2中。U1再根据系统的要求,通过P1.2、P1.3、P1.4、P3.0和P3.1等5个I/O口,将其存储在U2中的配置数据下载到电路中的FPGA器件中去。
因作者设计电路中的FPGA是Altera公司的FLEX系列的EPF10K10,其配置文件的容量为
15KB,故电路中采用1片AT24C128就可存储EPF10K10的配置数据。我们选用AT24C256器件可以存储两个配置文件,是为了实现多任务电路重构,此时整个ICR控制电路只有2片IC。可以说,它是目前结构最简单、成本最低的ICR控制电路。如果配置的FPGA是EPF10K30或更大门数的器件,则需要大容量的存储器件或多片AT24C256。(在两线串行总线上最多可接4片AT24C256。)
3软件设计
在该配置方案中,软件包括在PC机端的控制软件和在AT89C2051端的控制软件两部分。PC机端的软件采用VisualBasic语言编程,而AT89C2051采用汇编语言进行编程。
3.1PC机端的软件
PC机端的软件采用VisualBasic语言编程。VB支持面向对象的程序设计,具有结构化的事件驱动编程模式,而且可以十分简便地作出良好的人机界面。PC机端的控制程序主要实现读取.rbf文件并将其通过串口送出的功能 《FPGA器件的在线配置方法(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/172917.html
Altera的MAX+PLUSII或QuartusII开发工具可以生成多种配置或编译文件,用于不同配置方法的配置系统,而对于不同系列的目标器件配置数据的大小也不同,配置文件的大小一般有.rbf文件决定。.rbf文件即二进制文件。该文件包括所有的配置数据,一个字节的.rbf文件有8位配置数据,每一字节在配置时最低位最先被装载。微处理器可以读取这个二进制文件,并把它装载到目标器件中。Altera提供的软件工具不自动生成.rbf文件,须按照下面的步骤生成:①在MAX+PLUSII编译状态,选择文件菜单的变换SRAM目标文件命令;②在变换SRAM目标文件对话框,指定要转换的文件并且选择输出文件格式为.rbf(Sequential),然后确定。
2配置电路结构和原理
2.1串行通信的电路结构和原理
PC机与单片机的接口如图2所示。AT89C2051单片机通过串行口直接接收PC机传送来的串行数据,然后把接收到的数据存入数据存储器。由于PC机的串行口都是RS-232C标准的接口,所以,其输入输出在电平上和采用TTL电平的AT89C2051在接口时会产生电平不同的问题。为了解决这个问题,在PC机和单片机的串行通信电路中加入了MAX232芯片,以实现TTL电平和RS-232C接口电平之间的转换。这样PC机和AT89C2051单片机进行串行通信时就可以顺利进行了。除了电路结构之外,要实现PC机和AT89C2051之间的通信,还需要有合适的通信软件。
2.2ICR控制电路原理
ICR电路原理如图3所示。AT24C256用来存储FPGA的配置数据。
ICR控制电路的工作过程为:经MAXPLUSII编译生产的配置文件(.sof)通过格式转换成为(.rbf)。然后,利用PC机端的控制程序,通过PC机的串行通信口,经U1存储在U2中。U1再根据系统的要求,通过P1.2、P1.3、P1.4、P3.0和P3.1等5个I/O口,将其存储在U2中的配置数据下载到电路中的FPGA器件中去。
因作者设计电路中的FPGA是Altera公司的FLEX系列的EPF10K10,其配置文件的容量为
15KB,故电路中采用1片AT24C128就可存储EPF10K10的配置数据。我们选用AT24C256器件可以存储两个配置文件,是为了实现多任务电路重构,此时整个ICR控制电路只有2片IC。可以说,它是目前结构最简单、成本最低的ICR控制电路。如果配置的FPGA是EPF10K30或更大门数的器件,则需要大容量的存储器件或多片AT24C256。(在两线串行总线上最多可接4片AT24C256。)
3软件设计
在该配置方案中,软件包括在PC机端的控制软件和在AT89C2051端的控制软件两部分。PC机端的软件采用VisualBasic语言编程,而AT89C2051采用汇编语言进行编程。
3.1PC机端的软件
PC机端的软件采用VisualBasic语言编程。VB支持面向对象的程序设计,具有结构化的事件驱动编程模式,而且可以十分简便地作出良好的人机界面。PC机端的控制程序主要实现读取.rbf文件并将其通过串口送出的功能 《FPGA器件的在线配置方法(第2页)》