alteraFPGA的设计流程(1).ppt_第1页
alteraFPGA的设计流程(1).ppt_第2页
alteraFPGA的设计流程(1).ppt_第3页
alteraFPGA的设计流程(1).ppt_第4页
alteraFPGA的设计流程(1).ppt_第5页
已阅读5页,还剩178页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

贺 光 辉 清华大学电子工程系 Altera FPGA的设计流程 1 目标 掌握FPGA的标准设计流程和工具 用Modelsim进行功能级仿真并诊断RTL Code 用Quartus II做设计综合和布局布线 用FPGA Mega-functions做设计 返标SDF并运行门级的仿真 掌握FPGA的时序约束 了解FPGA的设计原则 2 提纲 FPGA概要 FPGA的设计流程 用Modelsim进行仿真和调试 用Quartus II进行时序分析、综合等 FIR滤波器的设计实例 3 FPGA概要 4 FPGA的优点 集成度高,可以替代多至几千块通用IC芯片 极大减小电路的面积,降低功耗,提高可靠性 具有完善先进的开发工具 提供语言、图形等设计方法,十分灵活 通过仿真工具来验证设计的正确性 可以反复地擦除、编程,方便设计的修改和升级 灵活地定义管脚功能,减轻设计工作量,缩短系统开发时间 布局布线容易,设计过程相当于只有ASIC设计的前端 研发费用低 不需要投片费用 5 FPGA的应用前景 通信、控制、数据计算等领域得到了广泛的应用 减少电子系统的开发风险和开发成本 缩短上市时间(time to market) 通过在系统编程、远程在线重构等技术降低维护升级成本 系统的原型实现ASIC的原型验证 6 ASIC常用FPGA进行原型机验证 CPLD与FPGA的区别 CPLDFPGA 内部结构ProducttermLookup Table 程序存储内部EEPROMSRAM,外挂EEPROM 资源类型组合电路资源丰富触发器资源丰富 集成度低高 使用场合完成控制逻辑能完成比较复杂的算法 速度慢快 其他资源EAB(嵌入式逻辑块),锁相环 保密性可加密一般不能保密 7 CPLD还是FPGA ? 复杂组合逻辑:CPLD PLD分解组合逻辑的功能很强,一个宏单元就可以分 解十几个甚至2030多个组合逻辑输入 复杂时序逻辑:FPGA FPGA芯片中包含的LUT和触发器的数量非常多,往往 都是成千上万 8 推荐书籍 Verilog Verilog数字系统设计教程 夏宇闻 北京航天航空大学出版社 硬件描述语言Verilog 刘明业等译 清华大学出版社 FPGA 基于FPGA的嵌入式系统设计 任爱锋 西安电子科技大学出版社 基于FPGA的系统设计(英文版) Wayne Wolf 机械工业出版社 IC设计 Reuse methodology manual for system-on-a-chip designs 3rd ed. Michael Keating, Pierre Bricaud. 片上系统:可重用设计方法学沈戈,等译电子工业出版社, 2004 Writing testbenches : functional verification of HDL models / Janick Bergeron Boston : Kluwer Academic, c2000 9 推荐文章 /papers/ Verilog Coding Styles For Improved Simulation Efficiency State Machine Coding Styles for Synthesis Synthesis and Scripting Techniques for Designing Multi- Asynchronous Clock Designs Synchronous Resets? Asynchronous Resets? I am so confused! Nonblocking Assignments in Verilog Synthesis, Coding Styles That Kill! 10 FPGA的设计流程 11 目标 完成本单元的学习后你将会 列出FPGA设计过程的步骤(以Altera的FPGA为设计 例子) 用缺省的软件选项来实现一个FPGA的设计 Quaturs II Modelsim 12 FPGA的设计流程 FPGA的设计流程 用ModelSim进行仿真 用Quartus II进行综合和时序分析 用Quartus II进行布局布线、调试和下载 13 14 FPGA设计流程 15 综合 - Translate Design into Device Specific Primitives - Optimization to Meet Required Area 如果没有使用, SDF用于顶级 51 用ModelSim作时序仿真(总结) 基本仿真步骤: 1 建立库 2 编译Altera器件库 3 映射库到物理目 录 4 编译综合后网表 5 加入SDF文件 4 启动仿真器 5 执行仿真 52 # script for Modelsim post timing simulation of Altera cyclone device # by Wayne # set your PC environment set modelsim_home d:/edatools/Modeltech_6.1d set quartus_home d:/quartus51 #build work lib vlib work #add cyclone device lib and its sim models vlog -reportprogress 300 -work cyclone $quartus_home/eda/sim_lib/cyclone_ atoms.v 程序接下页 53 vmap cyclone work # post simulation in modelsim for Altera devices set design_name chip_top set home /imp vlog /src/tb_top.v vlog /imp/simulation/modelsim/$design_name.vo vsim -sdftyp /tb_top/UUT=chip_top_v.sdo -t ps work.tb_top do wave.do run 500 us 程序接上页 54 用Quartus II 进行综合、 时序分析和布局布线 设计流程 Create a New Quartus II Project Compile a Design into an FPGA Locate Resulting Compilation Information Assign Design Constraints (Timing Worst Fmax Is Listed on the Top Source, Destination Registers & Associated Fmax Values fmax Analysis Details 76 Data Delay (B) Source Register Clock Delay (C) Setup Time (tsu) B C tcotsu E Clock Period Destination Register Clock Delay (E) Clock to Output (tco) 1 0.384 ns + 7.445 ns + 0.180 ns - 0.000 ns = 124.86 MHz Messages Window (System Tab) in Quartus II I/O Assignments: Tsu, Tco 77 Timing Assignments What can be tagged with a timing assignments? Registers (all) Clock Pins (all) Input Pins (tsu, th) Output Pins (tco) Bidirectional Pins (all) 78 Timing Settings Easy way to enter timing assignments Consolidates all timing assignments in one menu Individual clock settings OR overall circuit frequency Default system timing tsu th tco tpd Default external input/output delays Enable/Disable timing analysis during compilation Timing driven compilation 79 Reporting Timing Results Timing information is part of the Compilation Report Summary Timing Analyses fmax (not incl. delays to/from pins) or fmax (incl. delays to/from pins) Register-to-Register Table tsu (Input Setup Times) th (Input Hold Times) tco (Clock to Out Delays) tpd (Pin to Pin Delays) All timing results are reported here 80 I/O 建立时间和保持时间 81 Clock delay tsu th Data delay tsu = data delay - clock delay + intrinsic tsu intrinsic tsu & hold th = clock delay - data delay + intrinsic th I/O Clock-to-Output Analysis (tco) 82 Data delay tco Clock delay clock delay + intrinsic tco + data delay = tco intrinsic tco 83 Time Slack slack = 期望数据到达时间 数据实际到达时间 Slack为正,表示数据提前到达,此时组合逻辑延迟满 足条件,Register有足够的建立时间; Slack为负,表示数据比预期的时间晚到达,此时显然 不满足Register的建立时间,不满足约束; Slack Equations (Setup) 84 Slack = Largest Required Time - Longest Actual Time Required Time = Clock Setup - tco - tsu + (clk- clk) Actual Time = Data Delay launch edge clk clk setup latch edge Clock Setup* clk tco tsu Combinatorial Logic clk Register 1 Register 2 data delay Slack Equations (Hold) 85 launch edge clk hold latch edge Clock Hold* clk tco th Combinatorial Logic clk Register 1 Register 2 data delay Slack = Shortest Actual Time - Smallest Required Time Actual Time = Data Delay Required Time = Clock Hold - tco + th + (clk- clk) clk 86 inout clk reg1reg2 clk clk clk slack = p2p required p2p delay p2p p2p required = setup relationship + clock skew tCO - tSU setup relationship = latch edge launch edge clock skew = clk clk launch latch Simple Register to Register 示例 87 inout clk reg1reg2 clk slack = p2p required p2p delay p2p p2p required = setup relationship + clock skew tCO tSU setup relationship = latch edge launch edge = 5.0 0.0 = 5.0 clock skew = clk clk 2.266 0.11 0.082 tcotsu 0.082 0.11 = 2.521 - 2.993 = 5.0 + (-0.472) 0.11 0.082 = 4.336 2.266 = -0.472 = 4.336 tcotsu = 2.07 2.993 2.521 2.993 2.521 Simple Register to Register 示例(con) Input Minimum Delay Minimum Delay from External Device to Altera I/O Represents External Device tco + PCB Delay + PCB Clock Skew Constrains Registered Input Path (th) 88 A tco th Altera DeviceExternal Device PCB Delay thA Input Minimum Delay Input Minimum Delay thA CLKCLK Output Maximum Delay Maximum Delay from Altera I/O to External Device Represents External Device tsu + PCB Delay + PCB Clock Skew Constrains Registered Output Path (Max. tco) 89 B tco tsu Altera DeviceExternal Device PCB Delay tcoB tCLK - Output Maximum Delay tco Output Maximum Delay CLKCLK Output Minimum Delay Minimum Delay from Altera I/O to External Device Represents External Device th - PCB Board Delay Constrains Registered Output Path (Min. tco) 90 B tco th Altera DeviceExternal Device Board Delay tcoB Output Minimum Delay tco Output Maximum Delay CLKCLK Example Input Maximum Delay 91 Notice: 1) Input Pin d(6) & d(3) Timing Information Is Included with Clock Setup (fmax) Analysis 2) Input Delay Has Been Added to List Path Calculation Input Maximum Delay (d) = 4 ns Compiling in Quartus 92 Compiling in Quartus (Start) 93 Compiling in Quartus 94 Done! 95 Download Bit File 96 Download Bit File into FPGA 97 Altera FPGA配置列表 98 配置模式典型应用 被动串行模式(PS)运用增强配置芯片(EPC16,EPC8或EPC4 )EPC1, EPC2,EPC1441,串行同步微处理器,USB接口下载电 缆,MasterBlasterTM通信电缆,ByteBlasterTM II并 口下载电缆或ByteBlasterMVTM并口下载电缆。 主动串行模式(AS)应用串行配置芯片EPCS1,EPCS4等 被动并行同步模式(PPS ) 并行同步微处理器配置 快速被动并行模式(FPP ) 增强型配置芯片或8位同步并行微处理器速度为PPS模 式的8倍。 被动并行异步模式(PPA ) 采用异步微处理器,这种模式下微处理器对于目标芯 片如同一个存储器。 被动串行异步模式(PSA ) 串行异步处理器 JTAG模式根据 IEEE Std. 1149.1 (JTAG)引脚标准 Debug with SignalTap II 99 Quartus II 嵌入式逻辑分析仪特点 100 特点优点 可以灵活的改变缓冲器模式在循环模式或间隔模式采样时,使每次不同的触发均 能采到更加精确的数据。 每个器件最高支持1024个通道可以支持多个采用通道和很宽的总线模式采样。 每个器件支持128K采样存储使每个通道得到更多的采样数据。 采样时钟最高可达270MHz可以采集速率更高的数据。 资源使用的评价者可以评估逻辑或存储器件的资源使用情况。 不需要额外费用SignalTap II logic Analyzer 是Quartus II免费提 供的。 可对一个器件进行多重逻辑分析可以从一个复杂的时钟信号中分析出想要得到的数据 通过一个JTAG接口可对多个器件进行多重的逻辑分析使设计者可以通过一个JTAG接口同步得到多个芯片的 数据 对每个信号均有10种触发模式可以捕捉到更加复杂的数据信号,更加景区的找到问 题的所在。 增加的编译可以在综合编译之前对逻辑分析仪进行修改。 FIR滤波器设计实例 101 一个综合的例子 FIR滤波器的设计 Modelsim的使用 Quartus II的使用 宏功能模块的使用 仿真、综合等过程及报告的查看 102 设计要求 设计一个14阶FIR滤波器,已给出滤波器系数,要求用 Verilog/VHDL实现该滤波器,并且选用Altera的Stratix或 Stratix II器件。 要求充分利用Altera Stratix/Stratix II的器件的DSPBLOCK 资源。 要求每一级都一级流水线(pipeline)。 能够利用Altera的megafunction。 能够在Modelsim下进行仿真。 选用EP2S60F484C3器件。 Fmax达到270Mhz以上。 103 设计难点 难点在于要达到270MHz以上的频率 通过插入流水线可以达到要求 为了不过分的增加流水线寄存器的数量,需要对 FIR滤波器的结构进行精心设计 104 直接形式结构 105 关键路径是1个乘法器和2个加法器 流水线割集插入流水线寄存器,这样得到的关键路径是1个乘法和1个加法 数据广播结构 106 关键路径是1个乘法器和1个加法器 流水线割集插入流水线寄存器,关键路径是1个乘法 设计方案选择 寄存器数目关键路径长度 直接形式结构39 36个1个乘法器和1 个加法器 数据广播结构13 36个1个乘法器和1 个加法器 进一步流水的数 据广播结构 27 36个1个乘法器 107 FIR滤波器的结构 108 模块划分 乘法器模块:直接用Altera的DSPBLOCK lpm_mult进行例化 信号名称I/O描述 dataaI乘法器输入数据信号,16bit字长 databI乘法器输入数据信号,16bit字长 resultO滤波器输出数据信号,32bit字长 信号名称I/O描述 dataaI乘法器输入数据信号,36bit字长 databI乘法器输入数据信号,36bit字长 resultO滤波器输出数据信号,36bit字长 109 加法器模块:直接用Altera的DSPBLOCK lpm_add_sub进行例化 顶层模块:将乘法器和加法器连接成数据广播结构的FIR滤波器 DSP Blocks for Complex Arithmetic Applications Wireless Filtering & Compression Encryption Signal Processing Consumer Image Processing Audio Processing Compression DataCom Barrel Shifting QoS Algorithms 110 + Optional Pipelining Output Registers Output MUX + - S + - S Input Registers Stratix II DSP Blocks Up 96 DSP Blocks Each Configured for (8) 9x9 Multipliers (4) 18x18 Multipliers (1) 36x36 Multiplier Can Be Cascaded for Larger Operations Dedicated Configurable Math Circuitry Multiplier, Accumulate & Addition/Subtraction Rounding & Saturation Built-In Shift Register for Complete FIR Filter Implementation Selectable Input, Output & Pipeline Stage Registers 111 DSP Block Architecture 112 Add/Sub/Acc Summation Unit Output Register X X X X + + - + - Input Register Pipeline RegisterOutput Mux 综合结果 目标器件EP2S60F484C3 Total ALUTs338 / 48,352 ( 1 % ) DSP block 9-bit elements28 / 288 ( 9 % ) 最高时钟频率 (约束300MHz情况下) 312.89 MHz ( period = 3.196 ns ) 113 资资源利用率 速度 总结(1) 1、使用ModelSim进行功能仿真 3、使用Quartus II对设计进行综合,时序分析和 布线 4、使用ModelSim进行后仿真 5、使用Quartus II下载文件到实际电路 6、使用SignalTap II进行调试和数据观测 114 总结(2) 数字系统设计应该明确如下观点: 无论是ASIC、FPGA还是DSP,都只是一种实现手段; 无论采用哪种HDL或哪种开发工具,都不能单纯从语言 或工具本身作出评价; 关键是看应用环境,只有选择最适合于应用的实现方式 和工具才是最好的设计方案; 设计应该注重硬件设计本身,只有先有了良好的设计, 才可能有高效的描述和实现。 数字模拟电路、HDL语言等知识和实际经验比了解软件 更重要。 115 Altera公司的下载电缆 针对FPGA器件不同的内部结构,Altera公司提供了不同的 器件配置方式。Altera FPGA的配置可通过编程器、JATG接 口在线编程及Altera在线配置等方式进行。 Altera器件编程下载电缆的有:ByteBlaster并行下载 电缆,ByteBlasterMV并行下载电缆,MasterBlaster串行 USB通信电缆,BitBlaster串口下载电缆。 116 ByteBlaster并行下载电缆 ByteBlaster并行下载电缆是一种连接到 PC机 25针标 准口(LPT口)的硬件接口产品。ByteBlaster并行下 载电缆可以对FLEX10K、FLEX8000和 FLEX6000进行配 置,也可以对 MAX9000(包括MAX9000A)、MAX7000S 和MAX7000A进行编程。ByteBlaster为FPGA提供了一种 快速而廉价的配置方法,设计人员的设计可以直接通 过ByteBlaster下载电缆下载到芯片中去。 117 ByteBlaster并行下载电缆 ByteBlaster并行下载电缆提供两种下载模式: Passive serial mode(PS,被动串行模式) 用于配置FLEX10K、FLEX8000和FLEX600O系列器件。 JTAG模式 采用工业标准的JTAG边界扫描测试电路(符合IEEE 1149.1-1990标准)用于配置FLEX10K、MAX9000、 MAX7000S和 MAX7000A系列器件进行编程。 118 ByteBlaster并行下载电缆 ByteBlaster与PC机并口相连的是2 5针插头,与FPGA应用电路 PCB电路板相连的是10针插座。编程数据从PC机并口通过 ByteBlaster电缆下载到电路板。 注意:利用 ByteBlaster下载电缆配置编程 3.3 V器件(如 FLEX10KA、MAX7000A器件)时,要将电缆的VCC脚连到5.0V电源, 而器件的VCC脚连到3.3V电源。FLEX10KA和 MAX7000A器件能够耐 压到 5.0V,因此,ByteBlaster电缆的5.0V输出不会对 3.3V器件 造成损害,但5.0V电源中应连接上拉电阻。 ByteBlaster与PC机并口相连的是25针插头,在PS模式下和在JTAG 模式下的引脚信号名称是不同的,如表6.2.1所示。 119 ByteBlaster并行下载电缆 120 ByteBlaster并行下载电缆 ByteBlaster与FPGA应用电路PCB电路板相连的是10针 插座,在PS模式下和在JTAG模式下的引脚信号名称如 表6.2.2所示。注意:PCB板必须给下载电缆提供电源 VCC和信号地GND。 ByteBlaster的电缆线一般使用扁平电缆,长度不超过 30cm,否则带来干扰、反射及信号过冲问题,引起数 据传输错误,导致下载失败。如果PC机并行口与PCB电 路板距离较远, 需要加长电缆,则可在PC机并行口和ByteBlaster电缆 之间加入一根并行口连接电缆。 121 ByteBlaster并行下载电缆 122 ByteBlaster并行下载电缆 PCB板上的10针插头连接到FPGA器件的编程或配置引脚 上,ByteBlaster下载电缆的10针插座连接到PCB板上 的10针插头,ByteBlaster电缆通过10针插头获得电源 并下载数据到FPGA器件上。 123 ByteBlasterMV并行下载电缆 ByteBlasterMV并行下载电缆具有与PC机2 5针标准并行 口相连的接口,工作电压VCC支持3.3 V或5.0V,允许 PC机用户从MAXPLUS或 Quartus开发软件中下载数 据,通过PC机标准并行口在线编程 MAX9000、MAX7000S 、MAX7000A、MAX7000B和MAX3000A系列器件;可配置 APEX、APEX20K(包括APEX20K、APEX20KE和APEX20KC )、ACEX1K、Mercury、FLEX10K(包括 FLEX10KA 和 FLEX10KE)、FLEX8000 和FLEX6000系列器件及 Excalibur嵌入式微处理器。工作电压VCC支持3.3 V或 5.0V。使用与ByteBlaster并行口和BitBlaster串口下 载电缆相同10针电路板连接器与FPGA应用电路板(PCB )连接。 124 ByteBlasterMV并行下载电缆 ByteBlasterMV下载电缆提供两种下载模式: 被动串行模式(PS) 用于配置 APEX、APEX20K、ACEXIK、Mercury、 Excalibur、FLEX10K、FLEX8000和 FLEX6000系列器件 ; JTAG模式 具有标准的 JTAG接口,用于编程或配置APEX、 APEX20K、Mercury、ACEX1K、Excalibur、FLEX10K、 MAX9000、MAX7000S、MAX7000A、MAX7000B和 MAX3000A系列器件。 125 ByteBlasterMV并行下载电缆 ByteBlasterMV下载电缆与PC机并行口相连的是25针插头,与PCB 电路板相连的是10针插座。数据从PC机并行口通过ByteBlasterMV 电缆下载到电路板中。 注意:为了利用 ByteBlasterMV下载电缆配置 1.5 V APEX、 1.8 V APEX20KE、2.5 V APEX20K、Excalibur、Mercury、ACEXIK 和FLEX10KE器件,3.3 V电源中应该连接上拉电阻,电缆的VCC脚 连到 3.3 V电源,而器件的VCCINT引脚端连到相应的 2.5 V、1.8 V或1.5 V电源。对于PS配置,器件的VCCIO引脚端必须连到 2.5 V 或 3.3 V电源。对于APEX 、Mercury、ACEX1K、APEX20K和 FLEX10KE系列器件的 JTAG在线配置,或MAX7000A和MAX3000A系列 器件的JTAG在线编程,电缆的VCC引脚端则必须连接3.3 V电源。 器件的VCCIO引脚端既可连到 2.5 V,也可连到 3.3 V电源上。 126 ByteBlasterMV并行下载电缆 ByteBlasterMV的25针插头,与ByteBlaster下载电缆 的区别仅是第15脚不同,ByteBlaster连到GND,而 ByteBlasterMV连到VCC。 ByteBlasterMV的10针插座与ByteBlaster电缆的10针 插座完全相同。 PCB电路板上的10针连接插头与采用ByteBlaster下载电缆 的方式完全相同。 127 ByteBlasterMV并行下载电缆 使用 ByteBlasterMV电缆和 Quartus编程器,对一 个或多个器件进行编程或配置的步骤如下: 1. 对项目进行编译 Quartus编译器对 APEX 、APEX20K、Mercury和 Excalibur系列器件的配置自动产生 .sof文件,为了 对EPC配置芯片进行编程,就要用到 .pof文件或JAM STAPL格式文件。 连接 ByteBlasterMV电缆到 PC机的并行口,将10 针插座插到包含目标器件的电路板中,电路板必须为 ByteBlasterMV电缆提供电源。对于Windows NT操作系 统,在使用ByteBlasterMV电缆前必须安装驱动器。 128 ByteBlasterMV并行下载电缆 打开Quartus编程器,在 Processins菜单中选择 Open Programmer,然后点击Setup命令,在编程器硬件 部分指定ByteBlasterMV电缆和相应的LPT端口. 根据用户电路板上的器件连接方式,在模式项中选择Passive Serial或JTAG模式,然后点击Add File或Add Device按钮,增加将 要编程或配置的文件或器件,并建立一个器件链(chain)描述文 件( .cdf)。编程器具有两种编程模式:被动串行(PS)与JTAG 模式。在被动串行模式下,在器件链中选择 .sof文件。在JTAG模 式下,在器件链中应增加特定的器件和配置器件,除了 .sof和 .pof文件外,在器件链中对每个配置器件都有几个可编程选项,包 括对照编程文件的数据校验一个EPC配置器件的内容,检测器件是 否空,检查已编程器件并将其中的数据保存到文件中,或者使用其 数据编程或校验其它的配置器件。 在Quartus软件的编程器中选择Start按钮开始编程或配置器件 。ByteBlasterMV电缆从.sof 、.pof文件中下载数据到目标器件。 129 . MasterBlaster串行USB通信电缆 MasterBlaster通信电缆具有标准的PC机串行接口或 USB硬件接口。MasterBlaster电缆允许 PC机和 UNIX 用户,配置数据到 APEX、APEX20K(包括APEX20KE 和APEX20KC)、FLEX10K(包括FLEX10K A和FLEX10KE )、FLEX8000和 FLEX6000系列器件,以及Excalibur 嵌入式微处理器,也可编程 MAX9000、MAX7000S和 MAX7000A(包括MAX7000AE)系列器件。设计项目可以 直接下载到器件。在APEX和 APEX20K系列器件中, MasterBlaster电缆还可通过SignalTap嵌入式逻辑分 析器进行在线调试。工作电压VCC支持5.0V、3.3V或 2.5V。 130 MasterBlaster串行USB通信电缆 MasterBlaster电缆提供两种下载模式: 被动串行模式(PS):用于配置APEX 、APEX20K 和FLEX系列器件; JTAG模式:具有IEEE 1149.11业标准的JTAG接口, 用于编程具有JTAG能力的 MAX系列器件和在线串行配 置器件(如 EPC2)或配置APEX、APEX20K和 FLEX系 列器件。 131 MasterBlaster串行USB通信电缆 SignalTap宏功能是一种嵌入式逻辑分析器,能够在器 件特定的触发点捕获数据,并保存数据到 APEX和 APEX20K的嵌入式系统块(ESB)中。然后,这些数据被 送到 APEX或 APEX20K的 IEEE 1149.11 标准 JTAG接 口,通过 MasterBlaster通信电缆上传到Quartus波 形编辑器中进行显示。 MasterBlaster电缆通过一个串行接口或USB接口与计算 机相连,具有标准串行电缆的9针D型插头连接器连接到 RS2 3 2端口, USB连接器则能在任何标准的USB电缆 中使用。数据从串口或USB口,通过MasterBlaster电缆 下载到电路板。与电路板相连的是标准10针插座,尺寸 与Blaster及ByteBlasterMV下载电缆的10针插座完全一 样,插座引脚端信号如表6.2.3所示。 132 MasterBlaster串行USB通信电缆 表6.2.3 MasterBlaster下载电缆与电路板相连的10针 插座引脚端信号 133 MasterBlaster串行USB通信电缆 MasterBlaster下载电缆上的LED显示MasterBlaster电缆的工作状 态,如表6.2.4所示。 表6.2.4 MasterBlaster电缆的LED显示状态 134 BitBlaster串行下载电缆 BitBlaster串行下载电缆具有标准的RS232串行接口 (PC机的“COM”端口,UNIX工作站的“ttya”或“ttyb”端口 ) 。允许PC机和UNIX用户从PC机和 UNIX工作站的 MAXPLUS E开发软件中下载数据。BitBlaster电缆可 配置数据到FLEX10K、FLEX8000和 FLEX6000系列器件 ,也可编程 MAX9000(包括 MAX9000A)、MAX7000S、 MAX7000A和MAX3000A系列器件。 135 BitBlaster串行下载电缆 BitBlaster串行下载电提供PS模式和JTAG模式两种数 据下载模式。可编程配置一个器件或多个器件链。数 字传输速率支持9600至 230 400波特率。数据从 PC机 RS232串口通过 BitBlaster电缆下载到电路板,与 PC机RS232串口相连的是25针插座,与 PCB电路板相 连的是10针插 座。BitBlaster下载电缆上的状态指示 灯指示器件编程或配置的状态。 136 BitBlaster串行下载电缆 注意:利用BitBlaster下载电缆配置编程3.3V器件 (如 FLEX10KA、FLEX10KB、FLEX10KE、MAX7000A和 MAX3000A系列器件),将电缆的 VCC脚连接到 5.0 V 电源,而器件的 VCC脚连到 3.3 V电源。Altera的 3.3 V器件能够耐压到 5.0 V输入,因此Bit.Blaster 电缆的 5.0V输出不会对 33 V器件造成损害,但 5.0 V电源中应连接上拉电阻。 MasterBlaster下载电缆的供电方式有:由电路板提 供的 5.0 V或 3.3 V电源;直流电源供电;从USB 电缆来的 5.0 V电源。当电路板上的5.0 V或 3.3 V电 源无效时,MasterBlaster下载电缆能够由直流电源或 USB电缆供电。 137 下载电缆配置电路设计 Altera器件编程下载电缆与FPGA应用电路PCB电路板相连的 是10针插座,在PS模式下和在JTAG模式下,完成对器件的 配置。不同型号的下载电缆和器件,与下载电缆连接的电 路不同。下面以MasterBlaster串行USB通信下载电缆和 ByteBlasterMV下载电缆为例,介绍下载电缆配置电路设计 。 138 1)PS模式单个器件的配置电路设计 PS模式可以完成对单个APEX、APEX20K、Mercury、 ACEX1K、FLEX10K或 FLEX6000系列器件的配置,配置电路 如图6.2.1所示。 图中:除 APEX20KE、APEX20KC系列器件外,上拉电阻应该 连接到 MasterBlaster(VIO脚)或ByteBlasterMV的电源 。对于APEX20KE、APEX20KC器件使用 10 k电阻上拉 nCONFIG到 VCCINT。MasterBlaster和 ByteBlasterMV电 缆的电源电压 VCC为 3.3V或 5.0V。插座上的引脚端6 为MasterBlaster电缆提供的VIO基准电压,VIO应与器件的 VCCIO匹配。ByteBlasterMV电缆插座上的引脚端6不连接。 139 1. PS(被动串行)模式 在PS(被动串行)模式下,MasterBlaster下载电缆和 ByteBlasterMV下载电缆可以对单个与多个APEX、 APEX20K、Mercury、ACEX1K、FLEX10K或 FLEX6000系列器 件进行配置。在PS模式,配置数据从数据源通过 MasterBlaster下载电缆和ByteBlasterMV下载电缆串行地 传送到器件,配置数据由数据源提供的时钟同步。 140 MasterBlaster和ByteBlasterMV下载电缆PS 模式单个器件的配置电路 141 MasterBlaster和ByteBlasterMV下载电缆PS 模式多个器件的配置电路 142 在器件链中将每个器件的nCEO引脚端连接到下一个器件的nCE引 脚端,所有其它配置引脚端应分别连接在一起,器件链中的第 一个器件的nCE引脚端连接到地,最后一个器件的nCEO引脚端悬 空。在PS模式中,由于所有的CONF-DONE引脚端连接在一起,器 件链中的所有器件初始化时同时进入用户模式。另外,由于所 有的nSTATUS引脚端连接在一起,如果任何一个器件检测到错误 ,则整个器件链中断配置。 143 2. JTAG摸式 在JTAG模式下,MasterBlaster通信电缆和 ByteBlasterMV 下载电缆可以完成单个和多个APEX、APEX20K、Mercury 、ACEX1K、FLEX10K或 FLEX6000系列器件的编程或配置。 144 JTAG模式单个器件的配置电路设计 145 JTAG模式单个器件的配置电路设计 器件的配置是通过JTAG引脚端TCK、TMS、TDI和TDO完成的 。上拉电阻应该连接到电缆的电源,APEX20KE、APEX20KC 系列器件所有的上拉电阻均为 10 k。采用144引脚TQFP 封装的FLEX10K器件没有TRST信号脚,此时TRST信号可以忽 略。nCONFIG、MSELO、MSELI引脚端应采用支持非JTAG配置 模式的方式连接,如果仅仅使用JTAG配置模式,则nCONFIG 引脚端应连接到VCC,MSELO和MSELI引脚端应连接到地。 MasterBlaster电缆驱动器的参考电压VIO应与器件的VCCIO 匹配。 146 JTAG模式单个器件的配置电路设计 APEX、APEX20K、Mercury、ACEX1K、FLEX10K系列器件都 有专用的 JTAG引脚端,具有JTAG引脚端的一般功能,在配 置前后都可进行JTAG测试,并不仅仅限于配置过程中。器 件的芯片复位及输出使能引脚端,不影响JTAG边界扫描测 试或编程操作。触发这些引脚端也不会影响JTAG操作。设 计JTAG配置电路板时,常规的配置引脚端应充分考虑并连 接好。 147 在 JTAG配置时需要连接的引脚 148 JTAG模式多个器件的配置电路设计 149 当电路板包含多个器件时,或者电路板使用JTAG边界扫描 测试(BST)时,采用JTAG器件链进行编程最为理想。在 JTAG模式对多个器件(JTAG模式的器件链)进行编程时, 一个JTAG模式的插座需要与多个器件相连接, JTAG器件链 中器件的数目仅受电缆的驱动能力的限制。当器件数目超 过5个时,Altera建议对TCK、TDI和TMS引脚端在电路板上 加缓冲驱动。 150 APEX、APEX20K、Mercury、ACEX1K、FLEX10K和 MAX系 列器件能放在同一JTAG器件链中,进行编程或配置。 所有的上拉下拉电阻是1k。而APEX20KE、APEX20KC 系列器件的 nSTATUS与 CONF-DONE引脚端的上拉电阻为 10 k。 nCONFIG、MSELO、MSELI引脚端应采用支持

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论