CN104461620B - A kind of SoPC chips Autonomous Reconfiguration soft configuration method - Google Patents

A kind of SoPC chips Autonomous Reconfiguration soft configuration method Download PDF

Info

Publication number
CN104461620B
CN104461620B CN201410708138.7A CN201410708138A CN104461620B CN 104461620 B CN104461620 B CN 104461620B CN 201410708138 A CN201410708138 A CN 201410708138A CN 104461620 B CN104461620 B CN 104461620B
Authority
CN
China
Prior art keywords
gpio
pins
sparc
fpga
processors
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
CN201410708138.7A
Other languages
Chinese (zh)
Other versions
CN104461620A (en
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.)
Beijing Microelectronic Technology Institute
Mxtronics Corp
Original Assignee
Beijing Microelectronic Technology Institute
Mxtronics Corp
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 Beijing Microelectronic Technology Institute, Mxtronics Corp filed Critical Beijing Microelectronic Technology Institute
Priority to CN201410708138.7A priority Critical patent/CN104461620B/en
Publication of CN104461620A publication Critical patent/CN104461620A/en
Application granted granted Critical
Publication of CN104461620B publication Critical patent/CN104461620B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Logic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

一种SoPC芯片自主重构软配置方法,对SoPC芯片的自重构软配置电路技术进行研究,提出了一种SoPC芯片自主重构软配置方法,本发明方法充分利用配置接口可控性的特征,将处理器的GPIO接口与FPGA芯片的配置接口相连,构建物理数据通路和配置链路,通过控制GPIO接口的信号输出、采集和通过接口电平变化实现配置时序和配置数据,完成自重构操作。本发明方法与传统的重构配置方法相比无需在SoPC芯片添加FPGA专用的配置芯片即可实现系统的自主重构操作,有效的减小了SoPC芯片的体积,同时SoPC芯片内部用于控制实现自主重构操作的信号少,降低了设计复杂度。

A SoPC chip self-reconfiguration soft configuration method, the SoPC chip self-reconfiguration soft configuration circuit technology is studied, and a SoPC chip self-reconfiguration soft configuration method is proposed, and the method of the present invention fully utilizes the characteristics of the controllability of the configuration interface , connect the GPIO interface of the processor with the configuration interface of the FPGA chip, construct the physical data path and configuration link, realize the configuration sequence and configuration data by controlling the signal output and collection of the GPIO interface, and change the interface level, and complete the self-reconfiguration operate. Compared with the traditional reconfiguration configuration method, the method of the present invention can realize the autonomous reconfiguration operation of the system without adding an FPGA-specific configuration chip to the SoPC chip, effectively reducing the volume of the SoPC chip, and at the same time, the interior of the SoPC chip is used for control and realization. There are fewer signals for autonomous reconfiguration operations, which reduces design complexity.

Description

一种SoPC芯片自主重构软配置方法A SoPC chip autonomous reconfiguration soft configuration method

技术领域technical field

本发明涉及一种在芯片自主重构软配置方法,特别是一种SoPC芯片自主重构软配置方法,使得芯片能够在外太空环境下,具有智能化的自主重构和硬件任务在轨升级的能力。The present invention relates to a chip autonomous reconfiguration soft configuration method, in particular to a SoPC chip autonomous reconfiguration soft configuration method, enabling the chip to have intelligent autonomous reconfiguration and on-orbit upgrade capabilities of hardware tasks in an outer space environment .

背景技术Background technique

传统的星载电子系统,包含大量的离散器件和小规模集成电路,较多的印制板和单机带来了整机体积和功耗的增加,复杂的互联结构带来了系统可靠性的降低,显然,传统的电子系统将很难满足未来星载计算机小型化的发展需求。Traditional on-board electronic systems include a large number of discrete devices and small-scale integrated circuits. More printed boards and stand-alone machines increase the volume and power consumption of the whole machine, and the complex interconnection structure reduces system reliability. , obviously, the traditional electronic system will be difficult to meet the development needs of future spaceborne computer miniaturization.

国产的SoPC芯片BM3109,更符合电子系统的发展的需求。在空间维度,通过构造硬件逻辑电路实现数据运算和处理,从而充分利用了硬件电路高效和并发执行的优势,在时间维度的可变性,令一块FPGA可以在不同时刻表现出不同的功能,增加了系统灵活性和功能密度。The domestic SoPC chip BM3109 is more in line with the needs of the development of electronic systems. In the spatial dimension, data calculation and processing are realized by constructing hardware logic circuits, thus making full use of the advantages of high-efficiency and concurrent execution of hardware circuits. The variability in the time dimension enables an FPGA to perform different functions at different times, increasing the System flexibility and functional density.

传统FPGA配置方式,需要通过采用专用的配置芯片和相应的电路来实现。SoPC芯片设计时,若将此部分电路通过SIP技术集成到芯片中,必将增加了芯片面积,降低内部处理电路的密度。若将配置电路放置于芯片外部时,整个配置过程将处于暴露状态,不利于芯片安全性和保密性。The traditional FPGA configuration method needs to be realized by using a dedicated configuration chip and corresponding circuits. When designing a SoPC chip, if this part of the circuit is integrated into the chip through SIP technology, the chip area will increase and the density of the internal processing circuit will be reduced. If the configuration circuit is placed outside the chip, the entire configuration process will be exposed, which is not conducive to the security and confidentiality of the chip.

发明内容Contents of the invention

本发明解决的技术问题是:克服现有技术的不足,在减小芯片配置部分面积的前提下,提供了一种SoPC芯片自重构软配置电路的实现方法。The technical problem solved by the invention is: to overcome the deficiencies of the prior art and provide a method for realizing the self-reconfiguration soft configuration circuit of the SoPC chip under the premise of reducing the area of the chip configuration part.

本发明的技术解决方案是:一种SoPC芯片自主重构软配置方法,包括如下步骤:The technical solution of the present invention is: a kind of SoPC chip self-reconfiguration soft configuration method, comprises the following steps:

(1)将SPARC V8处理器地址线Ai接到FLASH的地址线PAi-1,i=1,2,3,...,22,数据线Dj连接到FLASH的数据线DQg,j=16,17,18,...,31,g=0,1,2,...,15,写控制信号端连接到FLASH的WE端,复位控制信号端连接到FLASH的PRESET端,片选控制信号端连接到FLASH的CE端,读控制信号端连接到FLASH的OE端;(1) Connect the address line A i of the SPARC V8 processor to the address line PA i-1 of the FLASH, i=1, 2, 3,..., 22 , and the data line D j is connected to the data line DQ g of the FLASH, j=16,17,18,...,31, g=0,1,2,...,15 , the write control signal terminal is connected to the WE terminal of FLASH, the reset control signal terminal is connected to the PRESET terminal of FLASH, The chip selection control signal terminal is connected to the CE terminal of FLASH, and the read control signal terminal is connected to the OE terminal of FLASH;

(2)将SPARC V8处理器的GPIO-PIO48引脚连接到FPGA的IO_D7引脚,GPIO-PIO49引脚连接到FPGA的IO_D6引脚,GPIO-PIO50引脚连接到FPGA的IO_D5引脚,GPIO-PIO51引脚连接到FPGA的IO_D4引脚,GPIO-PIO52引脚连接到FPGA的IO_D3引脚,GPIO-PIO53引脚连接到FPGA的IO_D2引脚,GPIO-PIO54引脚连接到FPGA的IO_D1引脚,GPIO-PIO55引脚连接到FPGA的IO_D0引脚,GPIO-PIO56引脚连接到FPGA的INIT引脚,GPIO-PIO58引脚连接到FPGA的DONE引脚,GPIO-PIO60引脚连接到FPGA的IO_DOUT_BUSY引脚,GPIO-PIO62连接到FPGA的IO_WRITE引脚,GPIO-PIO63引脚连接到FPGA的IO_CS引脚,GPIO-PIO57引脚连接到FPGA的PROGRAM引脚,GPIO-PIO61引脚连接到FPGA的GCLK引脚;(2) Connect the GPIO-PIO48 pin of the SPARC V8 processor to the IO_D7 pin of the FPGA, connect the GPIO-PIO49 pin to the IO_D6 pin of the FPGA, connect the GPIO-PIO50 pin to the IO_D5 pin of the FPGA, and connect the GPIO-PIO49 pin to the IO_D5 pin of the FPGA. The PIO51 pin is connected to the IO_D4 pin of the FPGA, the GPIO-PIO52 pin is connected to the IO_D3 pin of the FPGA, the GPIO-PIO53 pin is connected to the IO_D2 pin of the FPGA, and the GPIO-PIO54 pin is connected to the IO_D1 pin of the FPGA. The GPIO-PIO55 pin is connected to the IO_D0 pin of the FPGA, the GPIO-PIO56 pin is connected to the INIT pin of the FPGA, the GPIO-PIO58 pin is connected to the DONE pin of the FPGA, and the GPIO-PIO60 pin is connected to the IO_DOUT_BUSY pin of the FPGA. GPIO-PIO62 is connected to the IO_WRITE pin of the FPGA, GPIO-PIO63 is connected to the IO_CS pin of the FPGA, GPIO-PIO57 is connected to the PROGRAM pin of the FPGA, and GPIO-PIO61 is connected to the GCLK pin of the FPGA foot;

(3)在ISE10.1开发环境任意生成.bit文件并送至FLASH中,对SPARCV8处理器、FLASH、FPGA进行上电,SPARC V8处理器从FLASH中读取.bit文件,按照.bit文件格式和Virtex芯片的配置格式生成配置信息数组;(3) Generate a .bit file arbitrarily in the ISE10.1 development environment and send it to the FLASH, power on the SPARCV8 processor, FLASH, and FPGA, and the SPARC V8 processor reads the .bit file from the FLASH, according to the .bit file format and the configuration format of the Virtex chip to generate an array of configuration information;

(4)设置SPARC V8处理器的GPIO-PIO57引脚为输出,向GPIO-PIO57引脚的数据寄存器中写入“1”,然后向SPARC V8处理器的GPIO-PIO57引脚的数据寄存器中写入“0”,设置SPARC V8处理器的GPIO-PIO56引脚为输入,监测FPGA的INIT引脚的电压变化;(4) Set the GPIO-PIO57 pin of the SPARC V8 processor as an output, write "1" to the data register of the GPIO-PIO57 pin, and then write to the data register of the GPIO-PIO57 pin of the SPARC V8 processor Enter "0", set the GPIO-PIO56 pin of the SPARC V8 processor as an input, and monitor the voltage change of the INIT pin of the FPGA;

(5)如果INIT引脚由低电平变为高电平,则转入步骤(6);如果FPGA的INIT引脚为高电平,则重复步骤(3)-步骤(4),直至FPGA的INIT引脚出现由低电平向高电平的跳变后转步骤(6);(5) If the INIT pin changes from low level to high level, then go to step (6); if the INIT pin of FPGA is high level, then repeat step (3)-step (4) until FPGA Turn to step (6) after the INIT pin transitions from low level to high level;

(6)设置SPARC V8处理器GPIO-PIO63引脚为输出,然后向SPARC V8处理器GPIO-PIO63的数据寄存器写入“0”,一个时钟周期后设置SPARC V8处理器GPIO-PIO62脚为输出,并向SPARC V8处理器GPIO-PIO62的数据寄存器写入“0”;(6) Set the SPARC V8 processor GPIO-PIO63 pin as an output, then write "0" to the data register of the SPARC V8 processor GPIO-PIO63, set the SPARC V8 processor GPIO-PIO62 pin as an output after one clock cycle, And write "0" to the data register of SPARC V8 processor GPIO-PIO62;

(7)设置SPARC V8处理器的GPIO-PIO61引脚为输出,向SPARC V8处理器的GPIO-PIO61的数据寄存器写入“1”,下一个时钟周期向SPARC V8处理器的GPIO-PIO61的数据寄存器写入“0”,向SPARC V8处理器的GPIO-PIO61的数据寄存器写入“1”和“0”交替进行,并同时执行步骤(8)-步骤(9);(7) Set the GPIO-PIO61 pin of the SPARC V8 processor as an output, write "1" to the data register of the GPIO-PIO61 of the SPARC V8 processor, and send the data of the GPIO-PIO61 of the SPARC V8 processor in the next clock cycle Write "0" to the register, write "1" and "0" to the data register of the GPIO-PIO61 of the SPARC V8 processor alternately, and perform steps (8)-step (9) at the same time;

(8)设置SPARC V8处理器的GPIO-PIO63引脚为输出,向SPARC V8处理器GPIO-PIO63的数据寄存器写入“0”,设置SPARC V8处理器的GPIO-PIO62脚为输出,并向SPARC V8处理器GPIO-PIO62的数据寄存器写入“0”,设置SPARC V8处理器的GPIO-PIO57引脚为输出,并向SPARC V8处理器的GPIO-PIO57的数据寄存器写入“1”;(8) Set the GPIO-PIO63 pin of the SPARC V8 processor as an output, write "0" to the data register of the SPARC V8 processor GPIO-PIO63, set the GPIO-PIO62 pin of the SPARC V8 processor as an output, and send to the SPARC Write "0" into the data register of GPIO-PIO62 of the V8 processor, set the GPIO-PIO57 pin of the SPARC V8 processor as an output, and write "1" into the data register of the GPIO-PIO57 of the SPARC V8 processor;

(9)从配置信息数组中依次取出数据,在FPGA的GCLK信号为高电平时,以2进制的格式从高到低写入SPARC V8处理器的GPIO-PIO48、GPIO-PIO49、GPIO-PIO50、GPIO-PIO51、GPIO-PIO52、GPIO-PIO53、GPIO-PIO54、GPIO-PIO55,同时持续监控FPGA的IO_DOUT_BUSY引脚,如果IO_DOUT_BUSY引脚为高电平,则持续向GPIO-PIO48、GPIO-PIO49、GPIO-PIO50、GPIO-PIO51、GPIO-PIO52、GPIO-PIO53、GPIO-PIO54、GPIO-PIO55的数据寄存器中写入当前配置数据,直至IO_DOUT_BUSY信号输出为低电平,如果IO_DOUT_BUSY为低电平,则转入步骤(10);(9) Take out the data sequentially from the configuration information array, and when the GCLK signal of the FPGA is at a high level, write it into the GPIO-PIO48, GPIO-PIO49, and GPIO-PIO50 of the SPARC V8 processor from high to low in binary format , GPIO-PIO51, GPIO-PIO52, GPIO-PIO53, GPIO-PIO54, GPIO-PIO55, and continuously monitor the IO_DOUT_BUSY pin of the FPGA. Write the current configuration data into the data registers of GPIO-PIO50, GPIO-PIO51, GPIO-PIO52, GPIO-PIO53, GPIO-PIO54, and GPIO-PIO55 until the IO_DOUT_BUSY signal output is low. If IO_DOUT_BUSY is low, then Go to step (10);

(10)设置SPARC V8处理器GPIO-PIO62引脚为输出,向SPARC V8处理器GPIO-PIO62的数据寄存器写入“1”,然后设置SPARC V8处理器GPIO-PIO63引脚为输出,向SPARC V8处理器GPIO-PIO63的数据寄存器写入“1”;(10) Set the SPARC V8 processor GPIO-PIO62 pin as an output, write "1" to the data register of the SPARC V8 processor GPIO-PIO62, then set the SPARC V8 processor GPIO-PIO63 pin as an output, and write "1" to the SPARC V8 processor GPIO-PIO63 pin as an output The data register of the processor GPIO-PIO63 is written to "1";

(11)配置SPARC V8处理器GPIO-PIO58引脚为输入,持续检测FPGA的DONE控制信号的输出,如果DONE控制信号电平为高,则软配置电路完成,如果DONE控制信号电平不为高,则继续等待,直至DONE信号为高,当等待时间超出设定的阈值时,则重复执行(1)至(10)直至DONE信号为高。(11) Configure the GPIO-PIO58 pin of the SPARC V8 processor as an input, and continuously detect the output of the DONE control signal of the FPGA. If the DONE control signal level is high, the soft configuration circuit is completed. If the DONE control signal level is not high , then continue to wait until the DONE signal is high, and when the waiting time exceeds the set threshold, then repeat steps (1) to (10) until the DONE signal is high.

本发明与现有技术相比的优点在于:The advantage of the present invention compared with prior art is:

(1)本发明方法使SoPC芯片体积更小,与传统的重构配置方法相比无需在SoPC芯片添加FPGA专用的配置芯片即可实现系统的自主重构操作,有效的减小了SoPC芯片的体积,同时SoPC芯片内部用于控制实现自主重构操作的信号少,降低了设计复杂度低,简化了布局布线,减小了SoPC芯片的体积;(1) The inventive method makes the SoPC chip volume smaller, and compared with the traditional reconfiguration configuration method, the autonomous reconfiguration operation of the system can be realized without adding an FPGA-specific configuration chip to the SoPC chip, effectively reducing the SoPC chip. At the same time, there are fewer signals inside the SoPC chip to control and realize the autonomous reconfiguration operation, which reduces the design complexity, simplifies the layout and wiring, and reduces the size of the SoPC chip;

(2)本发明方法重构配置功耗低,与传统的重构配置方法相比,本发明方法无需添加FPGA专用的配置芯片来实现自主重构操作,减少了SoPC芯片配套电路数量和规模,降低了系统的功耗;(2) the inventive method reconfiguration configuration power consumption is low, compares with traditional reconfiguration configuration method, the inventive method needn't add FPGA special-purpose configuration chip to realize independent reconfiguration operation, has reduced SoPC chip supporting circuit quantity and scale, Reduced power consumption of the system;

(3)本发明方法重构配置速度快,与传统的重构配置方法相比,本发明在SoPC芯片内部实现了8bit并行模式的自主重构操作,速度更快;(3) the inventive method reconstruction configuration speed is fast, compares with traditional reconstruction configuration method, the present invention has realized the autonomous reconstruction operation of 8bit parallel mode inside SoPC chip, and speed is faster;

(4)本发明方法安全性高,与传统的重构配置方法相比,本发明在SoPC芯片内部实现自主重构操作,没有外部接口,在系统配置过程中,其它外部设备无法对配置信息进行截取和分析,保证了配置数据的安全性;(4) The method of the present invention has high security. Compared with the traditional reconfiguration configuration method, the present invention realizes the autonomous reconfiguration operation inside the SoPC chip without external interface. During the system configuration process, other external devices cannot perform configuration information Interception and analysis ensure the security of configuration data;

(5)本发明方法可靠性高,与传统的重构配置方法相比,本发明在SoPC芯片内部实现自主重构操作,减少了外部环境对裸露配置芯片造成的影响,同时防止了配置芯片在飞行过程中因振动造成的焊点脱落的问题。(5) The method of the present invention has high reliability. Compared with the traditional reconfiguration configuration method, the present invention realizes the autonomous reconfiguration operation inside the SoPC chip, reduces the impact of the external environment on the exposed configuration chip, and prevents the configuration chip from Solder joints fall off due to vibration during flight.

附图说明Description of drawings

图1为本发明方法自重构操作示意图;Fig. 1 is a schematic diagram of the self-reconfiguration operation of the method of the present invention;

图2为本发明方法SoPC芯片自重构操作示意图。Fig. 2 is a schematic diagram of the self-reconfiguration operation of the SoPC chip in the method of the present invention.

具体实施方式detailed description

本发明通过在SoPC芯片BM3109内部,构建配置数据链路,实现SoPC芯片的自主重构。SoPC芯片BM3109根据外界环境的变化和任务的需求,从芯片内部的存储空间内读取FPGA的配置文件,经软配置接口将配置数据加载到FPGA中,自重构操作如图1所示,SoPC芯片自重构操作如图2所示。其中,BM3109包括外部存储器FLASH、SPARC V8处理器和FPGA。The invention realizes the independent reconfiguration of the SoPC chip by constructing a configuration data link inside the SoPC chip BM3109. The SoPC chip BM3109 reads the configuration file of the FPGA from the storage space inside the chip according to the changes of the external environment and the requirements of the task, and loads the configuration data into the FPGA through the soft configuration interface. The self-reconfiguration operation is shown in Figure 1. SoPC The self-reconfiguration operation of the chip is shown in Figure 2. Among them, BM3109 includes external memory FLASH, SPARC V8 processor and FPGA.

针对这一特殊应用背景,本发明对SoPC芯片BM3109自重构实现的方案展开研究。提出了一种SoPC芯片自主重构软配置方法。充分利用配置接口可控性的特征,将处理器的GPIO接口与FPGA的配置接口相连,构建物理数据通路和配置链路。通过控制GPIO接口的信号输出、采集和通过接口电平变化实现配置时序和配置数据,完成自重构操作。Aiming at this special application background, the present invention conducts research on the realization scheme of SoPC chip BM3109 self-reconfiguration. A SoPC chip autonomous reconfiguration soft configuration method is proposed. Make full use of the controllability of the configuration interface, connect the GPIO interface of the processor with the configuration interface of the FPGA, and construct the physical data path and configuration link. The self-reconfiguration operation is completed by controlling the signal output and acquisition of the GPIO interface and realizing the configuration timing and configuration data through the interface level change.

1、实现软配置电路的配置操作,需要实现涉及SPARC V8处理器和外部存储器FLASH的的引脚连接。1. To realize the configuration operation of the soft configuration circuit, it is necessary to realize the pin connection involving the SPARC V8 processor and the external memory FLASH.

SPARC V8处理器地址线A1接到外部存储器FLASH的地址线PA0,地址线A2连接到FLASH的地址线PA1,地址线A3连接到FLASH的地址线PA2,地址线A4连接到FLASH的地址线PA3,地址线A5连接到FLASH的地址线PA4;地址线A6连接到FLASH的地址线PA5,地址线A7连接到FLASH的地址线PA6,地址线A8连接到FLASH的地址线PA7,地址线A9连接到FLASH的地址线PA8,地址线A10连接到FLASH的地址线PA9,地址线A11连接到FLASH的地址线PA10,地址线A12连接到FLASH的地址线PA11,地址线A13到FLASH的地址线PA12,地址线A14连接到FLASH的地址线PA13,地址线A15连接到FLASH的地址线PA14,地址线A16连接到FLASH的地址线PA15,地址线A17连接到FLASH的地址线PA16,地址线A18连接到FLASH的地址线PA17,地址线A19连接到FLASH的地址线PA18,地址线A20连接到FLASH的地址线PA19,地址线A21连接FLASH的地址线PA20,地址线A22连接FLASH的地址线PA21,数据线D16连接到FLASH的数据线DQ0,数据线D17连接到FLASH的数据线DQ1,数据线D18连接到FLASH的数据线DQ2,数据线D19连接到FLASH的数据线DQ3,数据线D20连接到FLASH的数据线DQ4,数据线D21连接到FLASH的数据线DQ5,数据线D22连接到FLASH的数据线DQ6,数据线D23连接到FLASH的数据线DQ7,数据线D24连接到FLASH的数据线DQ8,数据线D25连接到FLASH的数据线DQ9,数据线D26连接到FLASH的数据线DQ10,数据线D27连接到FLASH的数据线DQ11,数据线D28连接到FLASH的数据线DQ12,数据线D29连接到FLASH的数据线DQ13,数据线D30连接到FLASH的数据线DQ14,数据线D31连接到FLASH的数据线DQ15,写控制信号端连接到FLASH的WE端,复位控制信号端连接到FLASH的PRESET端,片选控制信号端连接到FLASH的CE端,读控制信号端连接到FLASH的OE端。The address line A1 of the SPARC V8 processor is connected to the address line PA0 of the external memory FLASH, the address line A2 is connected to the address line PA1 of the FLASH, the address line A3 is connected to the address line PA2 of the FLASH, and the address line A4 is connected to the address line PA3 of the FLASH. Address line A5 is connected to address line PA4 of FLASH; address line A6 is connected to address line PA5 of FLASH, address line A7 is connected to address line PA6 of FLASH, address line A8 is connected to address line PA7 of FLASH, and address line A9 is connected to FLASH The address line PA8, the address line A10 is connected to the address line PA9 of FLASH, the address line A11 is connected to the address line PA10 of FLASH, the address line A12 is connected to the address line PA11 of FLASH, the address line A13 is connected to the address line PA12 of FLASH, the address line A14 is connected to address line PA13 of FLASH, address line A15 is connected to address line PA14 of FLASH, address line A16 is connected to address line PA15 of FLASH, address line A17 is connected to address line PA16 of FLASH, and address line A18 is connected to address of FLASH Line PA17, address line A19 is connected to address line PA18 of FLASH, address line A20 is connected to address line PA19 of FLASH, address line A21 is connected to address line PA20 of FLASH, address line A22 is connected to address line PA21 of FLASH, and data line D16 is connected to FLASH data line DQ0, data line D17 is connected to FLASH data line DQ1, data line D18 is connected to FLASH data line DQ2, data line D19 is connected to FLASH data line DQ3, data line D20 is connected to FLASH data line DQ4, Data line D21 is connected to FLASH data line DQ5, data line D22 is connected to FLASH data line DQ6, data line D23 is connected to FLASH data line DQ7, data line D24 is connected to FLASH data line DQ8, and data line D25 is connected to FLASH Data line DQ9, data line D26 is connected to FLASH data line DQ10, data line D27 is connected to FLASH data line DQ11, data line D28 is connected to FLASH data line DQ12, data line D29 is connected to FLASH data line DQ13, data The line D30 is connected to the data line DQ14 of the FLASH, the data line D31 is connected to the data line DQ15 of the FLASH, the writing control signal terminal is connected to the WE terminal of the FLASH, the reset control signal terminal is connected to the PRESET terminal of the FLASH, and the chip selection control signal terminal is connected to the The CE end of FLASH and the read control signal end are connected to the OE end of FLASH.

2、实现软配置电路的配置操作,需要涉及SPARC V8处理器和FPGA芯片BQV300的引脚连接。2. To realize the configuration operation of the soft configuration circuit, it needs to involve the pin connection of the SPARC V8 processor and the FPGA chip BQV300.

SPARC V8处理器的GPIO-PIO48引脚连接到FPGA的IO_D7引脚,GPIO-PIO49引脚连接到FPGA的IO_D6引脚,GPIO-PIO50引脚连接到FPGA的IO_D5引脚,GPIO-PIO51引脚连接到FPGA的IO_D4引脚,GPIO-PIO52引脚连接到FPGA的IO_D3引脚,GPIO-PIO53引脚连接到FPGA的IO_D2引脚,GPIO-PIO54引脚连接到FPGA的IO_D1引脚,GPIO-PIO55引脚连接到FPGA的IO_D0引脚,GPIO-PIO56引脚连接到FPGA的INIT引脚,GPIO-PIO58引脚连接到FPGA的DONE引脚,GPIO-PIO60引脚连接到FPGA的IO_DOUT_BUSY引脚,GPIO-PIO62连接到FPGA的IO_WRITE引脚,GPIO-PIO63引脚连接到FPGA的IO_CS引脚,GPIO-PIO57引脚连接到FPGA的PROGRAM引脚,GPIO-PIO61引脚连接到FPGA的GCLK引脚。The GPIO-PIO48 pin of the SPARC V8 processor is connected to the IO_D7 pin of the FPGA, the GPIO-PIO49 pin is connected to the IO_D6 pin of the FPGA, the GPIO-PIO50 pin is connected to the IO_D5 pin of the FPGA, and the GPIO-PIO51 pin is connected to Connect to the IO_D4 pin of the FPGA, connect the GPIO-PIO52 pin to the IO_D3 pin of the FPGA, connect the GPIO-PIO53 pin to the IO_D2 pin of the FPGA, connect the GPIO-PIO54 pin to the IO_D1 pin of the FPGA, and connect the GPIO-PIO55 pin The pin is connected to the IO_D0 pin of the FPGA, the GPIO-PIO56 pin is connected to the INIT pin of the FPGA, the GPIO-PIO58 pin is connected to the DONE pin of the FPGA, the GPIO-PIO60 pin is connected to the IO_DOUT_BUSY pin of the FPGA, and the GPIO- PIO62 is connected to the IO_WRITE pin of the FPGA, the GPIO-PIO63 pin is connected to the IO_CS pin of the FPGA, the GPIO-PIO57 pin is connected to the PROGRAM pin of the FPGA, and the GPIO-PIO61 pin is connected to the GCLK pin of the FPGA.

3、软配置过程3. Soft configuration process

(1)在ISE10.1环境任意生成.bit文件到外部存储器FLASH中。对SPARC V8处理器、FLASH、FPGA芯片进行上电,上电完成后,SPARC V8处理器从FLASH中读取.bit文件,参照Xilinx公司.bit文件格式,去掉用文件的头部无效信息,提取有效数据信息,并按照XilinxVirtex芯片的配置格式,生成配置数组。(1) Arbitrarily generate .bit files in the ISE10.1 environment and store them in the external memory FLASH. Power on the SPARC V8 processor, FLASH, and FPGA chip. After power-on, the SPARC V8 processor reads the .bit file from the FLASH. Refer to the Xilinx company.bit file format, remove the invalid information in the header of the file, and extract Valid data information, and generate a configuration array according to the configuration format of the XilinxVirtex chip.

(2)配置SPARC V8处理器的GPIO-PIO57引脚为输出,先向GPIO-PIO57引脚的数据寄存器中写入“1”,使FPGA芯片的PROGRAM引脚输入为高电平。一个时钟周期后,向SPARC V8处理器的GPIO-PIO57引脚的数据寄存器中写入“0”,使FPGA的PROGRAM引脚输入为低电平来启动复位配置逻辑。(2) Configure the GPIO-PIO57 pin of the SPARC V8 processor as an output, first write "1" into the data register of the GPIO-PIO57 pin, so that the PROGRAM pin input of the FPGA chip is at a high level. After one clock cycle, write "0" into the data register of the GPIO-PIO57 pin of the SPARC V8 processor, so that the PROGRAM pin input of the FPGA is low level to start the reset configuration logic.

(3)2us后,配置SPARC V8处理器的GPIO-PIO56为输入,使其持续监测FPGA的INIT引脚的电压变化,当INIT引脚变由低电平变为高电平时,即GPIO-PIO56的输入由“0”变为“1”时,表示清空FPGA内部寄存器操作完成;如果FPGA的INIT引脚为高电平,则重复步骤(1)-步骤(2),直至FPGA的INIT引脚出现由低电平向高电平的跳变;(3) After 2us, configure the GPIO-PIO56 of the SPARC V8 processor as the input to continuously monitor the voltage change of the INIT pin of the FPGA. When the INIT pin changes from low level to high level, GPIO-PIO56 When the input of the input changes from "0" to "1", it means that the operation of clearing the internal registers of the FPGA is completed; if the INIT pin of the FPGA is at a high level, repeat steps (1)-step (2) until the INIT pin of the FPGA There is a transition from low level to high level;

(4)配置SPARC V8处理器GPIO-PIO63引脚为输出,向SPARC V8处理器GPIO-PIO63的数据寄存器写入“0”,使FPGA的IO_CS输入为低电平;(4) Configure the GPIO-PIO63 pin of the SPARC V8 processor as an output, and write "0" to the data register of the SPARC V8 processor GPIO-PIO63, so that the IO_CS input of the FPGA is low;

(5)经过1个时钟周期后,配置SPARC V8处理器GPIO-PIO62脚为输出,并向SPARCV8处理器GPIO-PIO62的数据寄存器写入“0”,使FPGA的IO_WRITE引脚为低电平;(5) After one clock cycle, configure the GPIO-PIO62 pin of the SPARC V8 processor as an output, and write "0" to the data register of the SPARCV8 processor GPIO-PIO62, so that the IO_WRITE pin of the FPGA is low;

(6)遍历配置信息数组并根据配置信息数组,连续配置SPARC V8处理器中的GPIO寄存器使GPIO组中的15个引脚生成时钟信号、读写控制信号、片选控制信号、配置使能信号、八路数据信号,送至FPGA。(6) Traversing the configuration information array and according to the configuration information array, continuously configure the GPIO registers in the SPARC V8 processor to make the 15 pins in the GPIO group generate clock signals, read and write control signals, chip selection control signals, and configuration enable signals , Eight data signals are sent to FPGA.

a.通过周期性配置SPARC V8处理器GPIO-PIO61引脚寄存器,通过控制寄存器和数据寄存器的变化来为FPGA的时钟信号GCLK提供输入。每间隔1个时钟周期,交替的令SPARCV8处理器的GPIO-PIO61管脚输出“1”和“0”。每一个交替周期内,由三部分操作构成:配置SPARC V8处理器的GPIO-PIO61引脚为输出;向SPARC V8处理器的GPIO-PIO61的数据寄存器写入“1”,使FPGA的GCLK输入为高电平;下一个时钟周期向SPARC V8处理器的GPIO-PIO61的数据寄存器写入“0”,使FPGA的GCLK输入为低电平。a. By periodically configuring the GPIO-PIO61 pin register of the SPARC V8 processor, the clock signal GCLK of the FPGA is provided by changing the control register and the data register. Every interval of 1 clock cycle, alternately make the GPIO-PIO61 pin of the SPARCV8 processor output "1" and "0". Each alternate cycle consists of three operations: configure the GPIO-PIO61 pin of the SPARC V8 processor as an output; write "1" to the data register of the GPIO-PIO61 of the SPARC V8 processor, so that the GCLK input of the FPGA is High level; the next clock cycle writes "0" to the data register of the GPIO-PIO61 of the SPARC V8 processor, so that the GCLK input of the FPGA is low level.

b.配置SPARC V8处理器的GPIO-PIO63引脚为输出,向SPARC V8处理器GPIO-PIO63的数据寄存器写入“0”,使FPGA的IO_CS输入为低电平;配置SPARC V8处理器的GPIO-PIO62脚为输出,并向SPARC V8处理器GPIO-PIO62的数据寄存器写入“0”,使FPGA的IO_WRITE引脚为低电平;配置SPARC V8处理器的GPIO-PIO57引脚为输出,并向SPARC V8处理器的GPIO-PIO57的数据寄存器写入“1”,使FPGA的PROGRAM引脚为高电平。b. Configure the GPIO-PIO63 pin of the SPARC V8 processor as an output, write "0" to the data register of the GPIO-PIO63 of the SPARC V8 processor, and make the IO_CS input of the FPGA low; configure the GPIO of the SPARC V8 processor -PIO62 pin is output, and write "0" to the data register of SPARC V8 processor GPIO-PIO62, so that FPGA's IO_WRITE pin is low level; configure the GPIO-PIO57 pin of SPARC V8 processor as output, and Write "1" to the data register of the GPIO-PIO57 of the SPARC V8 processor to make the PROGRAM pin of the FPGA a high level.

c.从配置信息数组中依次取出数据,在GCLK信号为高电平时,以2进制的格式,从高到低写入SPARC V8处理器的GPIO-PIO48、GPIO-PIO49、GPIO-PIO50、GPIO-PIO51、GPIO-PIO52、GPIO-PIO53、GPIO-PIO54、GPIO-PIO55,使FPGA的8路IO_D7、IO_D6、IO_D5、IO_D4、IO_D3、IO_D2、IO_D1、IO_D0信号接收到配置数据。重复执行此过程,直至配置信息数组被全部遍历。c. Take out the data in turn from the configuration information array, and when the GCLK signal is high, write it into GPIO-PIO48, GPIO-PIO49, GPIO-PIO50, and GPIO of the SPARC V8 processor from high to low in binary format -PIO51, GPIO-PIO52, GPIO-PIO53, GPIO-PIO54, GPIO-PIO55 enable the 8-way IO_D7, IO_D6, IO_D5, IO_D4, IO_D3, IO_D2, IO_D1, IO_D0 signals of the FPGA to receive configuration data. Repeat this process until all configuration information arrays are traversed.

d.执行(c)过程中,持续监控FPGA的IO_DOUT_BUSY引脚,若IO_DOUT_BUSY为高电平时,此时的配置数据将不能够被FPGA识别,需要持续向GPIO-PIO48、GPIO-PIO49、GPIO-PIO50、GPIO-PIO51、GPIO-PIO52、GPIO-PIO53、GPIO-PIO54、GPIO-PIO55的数据寄存器中写入当前配置数据,直至IO_DOUT_BUSY信号输出为低电平。d. During the execution of (c), continuously monitor the IO_DOUT_BUSY pin of the FPGA. If the IO_DOUT_BUSY is at a high level, the configuration data at this time will not be recognized by the FPGA. , GPIO-PIO51, GPIO-PIO52, GPIO-PIO53, GPIO-PIO54, GPIO-PIO55 data registers write the current configuration data until the IO_DOUT_BUSY signal output is low level.

(7)配置SPARC V8处理器GPIO-PIO62引脚为输出,向SPARC V8处理器GPIO-PIO62的数据寄存器写入“1”,使FPGA的IO_WRITE引脚输入为高电平;配置SPARC V8处理器GPIO-PIO63引脚为输出,向SPARC V8处理器GPIO-PIO63的数据寄存器写入“1”,使FPGA的IO_CS引脚输入为高电平;(7) Configure the GPIO-PIO62 pin of the SPARC V8 processor as an output, write "1" to the data register of the GPIO-PIO62 of the SPARC V8 processor, and make the IO_WRITE pin input of the FPGA a high level; configure the SPARC V8 processor The GPIO-PIO63 pin is an output, write "1" to the data register of the SPARC V8 processor GPIO-PIO63, so that the FPGA IO_CS pin input is high;

(8)配置SPARC V8处理器GPIO-PIO58引脚为输入,持续检测FPGA的DONE控制信号的输出,如果电平为高说明配置完成,否则继续等待,直至DONE信号为高。若等待时间超出1s的阈值,则重复执行(1)至(7)。(8) Configure the GPIO-PIO58 pin of the SPARC V8 processor as an input, and continuously detect the output of the DONE control signal of the FPGA. If the level is high, the configuration is completed, otherwise continue to wait until the DONE signal is high. If the waiting time exceeds the threshold of 1s, repeat steps (1) to (7).

本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。The content that is not described in detail in the description of the present invention belongs to the well-known technology of those skilled in the art.

Claims (1)

1. a kind of SoPC chips Autonomous Reconfiguration soft configuration method, it is characterised in that comprise the following steps:
(1) SPARC V8 processor address lines Ai is connected to FLASH address wire PAi-1, i=1,2,3 ..., 22, data wire Dj is connected to FLASH data wire DQg, j=16,17, and 18 ..., 31, g=0,1,2 ..., 15, the connection of write control signal end To FLASH WE ends, reseting controling signal end is connected to FLASH PRESET ends, and piece selects control signal end to be connected to FLASH's CE ends, read control signal end are connected to FLASH OE ends;
(2) the GPIO-PIO48 pins of SPARC V8 processors are connected to FPGA IO_D7 pins, GPIO-PIO49 pins connect FPGA IO_D6 pins are connected to, GPIO-PIO50 pins are connected to FPGA IO_D5 pins, and GPIO-PIO51 pins are connected to FPGA IO_D4 pins, GPIO-PIO52 pins are connected to FPGA IO_D3 pins, and GPIO-PIO53 pins are connected to FPGA IO_D2 pins, GPIO-PIO54 pins are connected to FPGA IO_D1 pins, and GPIO-PIO55 pins are connected to FPGA IO_ D0 pins, GPIO-PIO56 pins are connected to FPGA INIT pins, and GPIO-PIO58 pins are connected to FPGA DONE pins, GPIO-PIO60 pins are connected to FPGA IO_DOUT_BUSY pins, and the IO_WRITE that GPIO-PIO62 is connected to FPGA draws Pin, GPIO-PIO63 pins are connected to FPGA IO_CS pins, and GPIO-PIO57 pins are connected to FPGA PROGRAM pins, GPIO-PIO61 pins are connected to FPGA GCLK pins;
(3) .bit files are arbitrarily generated in ISE10.1 development environments and delivered in FLASH, to SPARCV8 processors, FLASH, FPGA carries out electricity, and SPARC V8 processors read .bit files from FLASH, according to .bit file formats and Virtex chips Configuration format generation configuration information array;
(4) the GPIO-PIO57 pins for setting SPARC V8 processors are output, to the data register of GPIO-PIO57 pins Middle write-in " 1 ", then writes " 0 " into the data register of the GPIO-PIO57 pins of SPARC V8 processors, sets SPARC The GPIO-PIO56 pins of V8 processors are input, monitor the voltage change of FPGA INIT pins;
(5) if INIT pins are changed into high level from low level, it is transferred to step (6);If FPGA INIT pins are high electricity Flat, then repeat step (3)-step (4), goes to step after FPGA INIT pins occur from low level to the saltus step of high level (6);
(6) SPARC V8 processor GPIO-PIO63 pins are set for output, then to SPARC V8 processors GPIO-PIO63 Data register write-in " 0 ", SPARC V8 processor GPIO-PIO62 pin are set after a clock cycle for output, and to SPARC V8 processors GPIO-PIO62 data register write-in " 0 ";
(7) the GPIO-PIO61 pins for setting SPARC V8 processors are output, to the GPIO-PIO61 of SPARC V8 processors Data register write-in " 1 ", next clock cycle writes to the GPIO-PIO61 of SPARC V8 processors data register Enter " 0 ", write " 1 " and " 0 " alternately to the GPIO-PIO61 of SPARC V8 processors data register, and perform simultaneously Step (8)-step (9);
(8) the GPIO-PIO63 pins for setting SPARC V8 processors are output, to SPARC V8 processors GPIO-PIO63's Data register writes " 0 ", and the GPIO-PIO62 pin for setting SPARC V8 processors are output, and to SPARC V8 processors GPIO-PIO62 data register write-in " 0 ", the GPIO-PIO57 pins for setting SPARC V8 processors are output, and to The GPIO-PIO57 of SPARC V8 processors data register write-in " 1 ";
(9) data are taken out successively from configuration information array, when FPGA GCLK signals are high level, with the form of 2 systems GPIO-PIO48, GPIO-PIO49, GPIO-PIO50, GPIO-PIO51, GPIO- of SPARC V8 processors are write from high to low PIO52, GPIO-PIO53, GPIO-PIO54, GPIO-PIO55, while FPGA IO_DOUT_BUSY pins are persistently monitored, such as Fruit IO_DOUT_BUSY pins are high level, then continue to GPIO-PIO48, GPIO-PIO49, GPIO-PIO50, GPIO- Write-in is currently configured number in PIO51, GPIO-PIO52, GPIO-PIO53, GPIO-PIO54, GPIO-PIO55 data register According to until IO_DOUT_BUSY signal outputs are low level, if IO_DOUT_BUSY is low level, being transferred to step (10);
(10) SPARC V8 processor GPIO-PIO62 pins are set for output, to SPARC V8 processors GPIO-PIO62 number " 1 " is write according to register, then SPARC V8 processor GPIO-PIO63 pins are set for output, to SPARC V8 processors GPIO-PIO63 data register write-in " 1 ";
(11) SPARC V8 processor GPIO-PIO58 pins are configured as input, persistently detection FPGA DONE control signals is defeated Go out, if DONE control signals level is height, soft configuration circuit is completed, if DONE control signals level is not height, after It is continuous to wait, until DONE signals are height, when threshold value of the stand-by period beyond setting, then repeat (1) to (10) until DONE signals are height.
CN201410708138.7A 2014-11-27 2014-11-27 A kind of SoPC chips Autonomous Reconfiguration soft configuration method Active CN104461620B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410708138.7A CN104461620B (en) 2014-11-27 2014-11-27 A kind of SoPC chips Autonomous Reconfiguration soft configuration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410708138.7A CN104461620B (en) 2014-11-27 2014-11-27 A kind of SoPC chips Autonomous Reconfiguration soft configuration method

Publications (2)

Publication Number Publication Date
CN104461620A CN104461620A (en) 2015-03-25
CN104461620B true CN104461620B (en) 2017-12-29

Family

ID=52907725

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410708138.7A Active CN104461620B (en) 2014-11-27 2014-11-27 A kind of SoPC chips Autonomous Reconfiguration soft configuration method

Country Status (1)

Country Link
CN (1) CN104461620B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105608048B (en) * 2015-12-21 2018-09-11 北京时代民芯科技有限公司 A kind of spaceborne dsp software task dynamic restructuring circuit and reconstructing method
CN108182164B (en) * 2017-11-30 2020-03-20 北京时代民芯科技有限公司 SoC interface circuit for data address self-adaptive conversion and access method
CN111176548B (en) * 2019-12-02 2023-08-08 北京时代民芯科技有限公司 An Integrated Spaceborne Computer System Based on SiP

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100442254C (en) * 2003-06-13 2008-12-10 Ut斯达康(中国)有限公司 Method and device for proceeding on line load against multiple proprammable logic devices
CN101673101B (en) * 2009-09-27 2011-06-22 电子科技大学 A FPGA reconfigurable device with online programming
CN102377423A (en) * 2010-08-23 2012-03-14 熊猫电子集团有限公司 Field programmable gate array (FPGA) online configuration method
CN102779079B (en) * 2011-05-12 2014-11-12 中国科学院空间科学与应用研究中心 Configuration method and system used for satellite-bone SRAM (Static Random Access Memory) type FPGA (Field Programmable Gate Array) working on track for long time
CN102508807B (en) * 2011-11-08 2014-11-05 北京时代民芯科技有限公司 Scalable processor architecture (SPARC)-V8-processor-based bus structure
US8716876B1 (en) * 2011-11-11 2014-05-06 Altera Corporation Systems and methods for stacking a memory chip above an integrated circuit chip
CN203102253U (en) * 2013-02-06 2013-07-31 天津光电聚能专用通信设备有限公司 High-speed parallel circuit provided with field programmable gate array (FPGA)

Also Published As

Publication number Publication date
CN104461620A (en) 2015-03-25

Similar Documents

Publication Publication Date Title
CN102799509B (en) High-bandwidth extendable complex logic verification system based on double FPGA (Field- Programmable Gate Array) chips
US8806316B2 (en) Circuits, integrated circuits, and methods for interleaved parity computation
WO2020103058A1 (en) Programmable operation and control chip, a design method, and device comprising same
KR102121891B1 (en) System and method for frequency mode detection and implementation
CN104461620B (en) A kind of SoPC chips Autonomous Reconfiguration soft configuration method
US10698697B2 (en) Adaptive routing to avoid non-repairable memory and logic defects on automata processor
KR102533062B1 (en) Method and Apparatus for Improving Fault Tolerance in Non-Volatile Memory
US11016525B1 (en) Clock control circuit and clock control method
CN104572326B (en) A kind of SoPC chip fault-tolerance approaches based on retaking of a year or grade via Self-reconfiguration
US20190066758A1 (en) Command signal clock gating
CN106372032B (en) A kind of FPGA dynamic reconfiguration methods
CN109661654A (en) The expanded application of error checking and correction and correction code in memory
CN101901203A (en) Multi-channel large-capacity parallel data acquisition device
CN104200846B (en) Embedded-type PROM test system and achieving method
CN100462985C (en) A Fast Configuration Method of Field Programmable Gate Array
CN1627521A (en) Semiconductor integrated circuit device
EP1811398A1 (en) Processor architecture with a multiported memory for interprocessor communication
KR102384962B1 (en) Semiconductor memory device
CN201876872U (en) Large-volume data acquisition device
CN110048718A (en) A kind of data collecting card
US20150318032A1 (en) Apparatuses and methods for controlling a clock signal provided to a clock tree
CN104035898A (en) Memory access system based on VLIW (Very Long Instruction Word) type processor
CN103309781B (en) The detection method of the single multiplying power Synchronous dynamic RAM based on DSP and FPGA
US12088301B2 (en) Resetting integrated circuits
CN100583077C (en) Device and method for promoting system bus drive ability

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant