■ 【Trigger Port Width】文本框:触发端口宽度,为256。
■ 【Match Units】下拉列表框:用于检测触发端口是否满足特定的条件。一个触发端多可有16个触发匹配单元,匹配单元的类型在 【Match Type】下拉列表框中选择。简单的匹配单元是“等于(=)”或“不等于(!=)”。复杂的匹配单元是需要满足所有的比较类型,包括“等于(=)”、 “不等于(!=)”、 “大于(>)”、 “小于(<)”、 “大于等于(>≡)”、 “小于等于(<=)”和范围比较。配置单元也包括对信号沿的检测。
■ 【 Counter width】下拉列表框:匹配单元计数器宽度,用来选择满足匹配条件的次数。
■ 【Match Type】下拉列表框:匹配类型选择,其中Basic类型用于比较数据信号,该类型仅检测逻辑“0”逻辑“1”和无关逻辑“x”。匹配函数可以是相等“=”或不等“<>”,而对逻辑沿的变化并不关心。由于结构简单,因此每个逻辑Slice可以实现8位数据的检测;Basic w/edges类型用于比较控制信号,即需要检测信号由低到高或由高到低的变化。该类型可以检测逻辑“0”逻辑“1”、无关逻辑“x”、上升沿“R”、下降沿“F”和任何变化“B”,匹配函数可以是相等“=”或不等“<>”。一个逻辑Slice可以实现4位数据的检测;Extended类型用于比较地址和数据信号,该类型主要关心数据值的变化,仅检测逻辑“0”逻辑“1”和无关逻辑“x”。匹配函数可以是相等“=”、不等“<>”、大于“>”、大于等于“>=”、小于“<”和小于等于“<=”。在一个逻辑Slice中只能实现2位数据的检测;Extended w/edges类型用于比较地址和数据信号,该类型不仅关心数据值的变化,同时也检测信号沿的变化。可以检测逻辑“0”、逻辑“1”、无关逻辑“x”、上升沿“R”、下降沿“F”和任何变化“B”,匹配函数可以是相等“=”、不等“()”、大于“>”、大于等于“)=”、小于“<”和小于等于“<=”。一个逻辑Slice只能实现2位数据的检测;Range类型用于比较地址和数据信号,该类型主要关心数值范围的变化,仅检测逻辑“0”、逻辑“1”和无关逻辑“x”,匹配函数比较复杂,可以是相等“=”、不等“<>”、大于“>”、大于等于“>=”、小于“<”、小于等于“<=”、在范围内"in range”和不在范围内“not In range”。一个逻辑Slice仅能实现1位数据的检测;Range w/edges类型用于比较地址和数据信号,该类型不仅关心数值范围的变化,同时也检测信号沿的变化。可以检测逻辑“0”、逻辑“1”、无关逻辑“x”、上升沿“R”、下降沿“F”和任何变化“B”,匹配函数比较复杂,可以是相等“=”,不等“<>”大于“>”、大于等于“>=”、小于“<”小于等于“<=”、在范围内“in range”和不在范围内“not in range”。一个逻辑Slice仅能实现1位数据的检测。
■ 【 Exclude Trigger Port from Data Storage】复选框:是否从所采样和保存的数据中剔除触发端口。当在图1所示对话框中选择【Data Same As Trigger】复选框后,将自动激活该选项;否则需要占用更多的存储器资源。
(6)选择ICON(Integrated CONtroller)Core,单击【Nextl按钮,将出现图1所示的设置ICON模块参数界面。将Core命名为ICON_core。ICON Core用来将ILA Core和VIO Core连接JTAG端口,因此它起到了一个桥梁的作用。
图1设ICON模块参数界面
■【Number of Control Ports】下拉列表框:ICON Core可以连接多达15 ILA、IBA/OPB、IBA/PLB、VIO和ATC2捕获内核。
■【Disable Boundary Scan Component Instance 】复选框:FPGA内的边界扫描元件用来实现FPGA支持JTAG协议,该元件多可扩展到4个扫描链,具体使用了多少(USER1、USER2、USER3或USER4)由器件所决定。例如,Spartan-3E器件使用了USER1和USER2。由于Cores不能同时使用这些边界扫描元件,但可以通过用户的设计来间接地使用这些资源。通常可将ICON中包含的作为ICON Core接口信号的未用边界扫描链进行例化,或者例化处于器件中任何位置的边界扫描元件并将USERi和USEFR2扫描链联系起来,以实现ICON信号的通信。
该选项默认值为清除,即需要自动地例化ICON内部的边界扫描元件。
■【Disable JTAG Clock BUFG Insertion】复选框:选择是否在JTAG链的时钟引脚前插入BUFG宏,默认值为自动分配一个BUFG。如果设计者清除该选项,可能会造成JTAG时钟的延迟和偏移。
■【Enable Unused Boundary Scan Ports】复选框:用来控制是否将未用的边界扫描链绑定到端口上。
(7)单击【Next】按钮,将出现图2所示的设VIO模块参数界面。将Core 命名为VlO_core。虚拟IO的使用,可以非常方便地实时监控和驱动FPGA内部的信号,为现场调试提供了非常大的帮助。
图2 设置VIO模块参数界面
■ 【Enable Asynchronous Input Port】复选框:当使能异步输入端口时,采样信号使用JTAG引脚的输入时钟,信号输入的宽度从1~256。
■ 【Enable Asynchronous Output Port】复选框:当使能异步输出端口时,其输出信号的时钟为来自于JTAG引脚输入的时钟,信号输出的宽度从1~256。
■ 【Enable Synchronous Input Port】复选框:当使能同步输入端口时,其对信号的采样使用设计运行的时钟,信号输入的宽度从1~256。
■ 【Enable Synchronous Outnut Port】复选框:当使能同步输出端口时,其输出信号的时钟为来自于设计本身运行的时钟,信号输出的宽度从1~256。
■ 【Invert Clock Input】复选框:选择时钟的上升沿或下降沿作为触发条件。