这里会显示出您选择的修订版和当前版本之间的差别。
后一修订版 | 前一修订版 | ||
icore4tx_fpga_23 [2020/06/29 09:59] zgf 创建 |
icore4tx_fpga_23 [2022/04/01 11:39] (当前版本) sean |
||
---|---|---|---|
行 1: | 行 1: | ||
+ | | **银杏科技有限公司旗下技术文档发布平台** |||| | ||
+ | |技术支持电话|**0379-69926675-801**||| | ||
+ | |技术支持邮件|Gingko@vip.163.com||| | ||
+ | ^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | ||
+ | | V1.0 | 2020-06-29 | gingko | 初次建立 | | ||
+ | |||
+ | |||
===== 实验二十三:Slave Serial模式配置FPGA ===== | ===== 实验二十三:Slave Serial模式配置FPGA ===== | ||
行 6: | 行 13: | ||
- 掌握Xilinx FPGA的Slave Serial配置模式过程。 | - 掌握Xilinx FPGA的Slave Serial配置模式过程。 | ||
==== 二、实验设备及平台 ==== | ==== 二、实验设备及平台 ==== | ||
- | - iCore4TX 双核心板。 | + | - iCore4TX 双核心板[[https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-22598974120.3.29da532fLkazHH&id=614919247574|点击购买]]。 |
- J-link(或相同功能)的仿真器。 | - J-link(或相同功能)的仿真器。 | ||
- Micro USB线缆。 | - Micro USB线缆。 | ||
行 16: | 行 23: | ||
{{ :icore4tx:icore4tx_fpga_23_1.png?direct |图 23-1}} | {{ :icore4tx:icore4tx_fpga_23_1.png?direct |图 23-1}} | ||
**1.Slave Serial mode** | **1.Slave Serial mode** | ||
- | iCore4TX则采用Slave Serial模式配置FPGA,此方式是由ARM控制配置时序和读取配置文件并配置到FPGA种,好处是可以发挥iCore4TX的ARM+FPGA架构的优势,且配置文件可以存储到不同类型的非易失存储器中,较为灵活。那么Slave Serial配置模式下,ARM和FPGA之间的信号连线是什么样的呢,可以参考官方设计,如图所示: | + | * iCore4TX则采用Slave Serial模式配置FPGA,此方式是由ARM控制配置时序和读取配置文件并配置到FPGA种,好处是可以发挥iCore4TX的ARM+FPGA架构的优势,且配置文件可以存储到不同类型的非易失存储器中,较为灵活。那么Slave Serial配置模式下,ARM和FPGA之间的信号连线是什么样的呢,可以参考官方设计,如图所示: |
{{ :icore4tx:icore4tx_fpga_23_2.png?direct |图 23-2}} | {{ :icore4tx:icore4tx_fpga_23_2.png?direct |图 23-2}} | ||
Slave Serial模式下FPGA信号线如23-3中所示,各信号定义参考图23-4表格。 | Slave Serial模式下FPGA信号线如23-3中所示,各信号定义参考图23-4表格。 | ||
行 23: | 行 30: | ||
明白了这几个信号的含义,再来看一下PS配置模式的时序图: | 明白了这几个信号的含义,再来看一下PS配置模式的时序图: | ||
{{ :icore4tx:icore4tx_fpga_23_5.png?direct |图 23-5}} | {{ :icore4tx:icore4tx_fpga_23_5.png?direct |图 23-5}} | ||
- | * **注意:**Bit0是第一个字节的高位,例如,如果发送的第一个字节为0xAA(1010_1010),bit0=1,bit1=0,bit2=1,…。 | + | * **注意:Bit0是第一个字节的高位,例如,如果发送的第一个字节为0xAA(1010_1010),bit0=1,bit1=0,bit2=1,…。** |
* 从时序图中也可以看到,整个配置过程大致如下: | * 从时序图中也可以看到,整个配置过程大致如下: | ||
* 1)PROGRAM_B首先拉低一个时钟周期,在信号的上升沿开始进行配置; | * 1)PROGRAM_B首先拉低一个时钟周期,在信号的上升沿开始进行配置; |