一种jtag接口与内部用户逻辑之间的连接装置的制造方法_2

文档序号:9810483阅读:来源:国知局
r在不同操作间的一个中间状态,这个状态下的动作取决于 当前指令寄存器中的指令。在该状态下,如果TMS-直保持为"0",TAPContro 11 er将一直保 持在Run-Test/Idle状态下;如果TMS由"0"变为"Γ (在TCK的上升沿触发),将使TAP控制器 进入 Select_DR_Scan 状态。
[0030] Select-DR-Scan:
[0031] 这是一个临时的中间状态,如果TMS为"0"(在TCK的上升沿触发),TAP Controller 进入Capture-DR状态,后续的系列动作都将以数据寄存器作为操作对象;如果TMS为"Γ (在 TCK的上升沿触发),TAP Controller进入Select-IR-Scan状态。
[0032] Capture-DR:
[0033] 当TAP Controller在这个状态中,在TCK的上升沿,芯片输出管脚上的信号将被 "捕获"到与之对应的数据寄存器的各个单元中去。如果TMS为"0"(在TCK的上升沿触发), TAP Contro 11 er进入Shift-DR状态;如果TMS为 "Γ (在TCK的上升沿触发),TAP Contro 11 er 进入Exit 1-DR状态。
[0034] Shift-DR:
[0035] 在这个状态中,由TCK驱动,每一个时钟周期,被连接在TDI和TD0之间的数据寄存 器将从TDI接收一位数据,同时通过TD0输出一位数据。如果TMS为"0"(在TCK的上升沿触 发),TAP Controller保持在Shift-DR状态;如果TMS为"Γ (在TCK的上升沿触发),TAP Controller进入到Exitl-DR状态。假设当前的数据寄存器的长度为4。如果TMS保持为0,那 在4个TCK时钟周期后,该数据寄存器中原来的4位数据(一般是在Capture-DR状态中捕获的 数据)将从TDO输出来;同时该数据寄存器中的每个寄存器单元中将分别获得从TDI输入的4 位新数据。Update-DR:
[0036]在Update-DR状态下,由TCK上升沿驱动,数据寄存器当中的数据将被加载到相应 的芯片管脚上去,用以驱动芯片。在该状态下,如果TMS为"0",TAP Controller将回到Run-Test/Idle状态;如果TMS为"Γ,TAP Controller将进入Select-DR-Scan状态。
[0037] Select-IR-Scan:
[0038] 这是一个临时的中间状态。如果TMS为"0"(在TCK的上升沿触发),TAP Controller 进入Capture-IR状态,后续的系列动作都将以指令寄存器作为操作对象;如果TMS为"Γ (在 TCK的上升沿触发),TAP Controller进入Test-Logic Reset状态。
[0039] 状态Capture-IR与状态Capture-DR状态相对应,状态Shif t-IR与状态Shif t-DR相 对应,状态Update-IR与状态Update-DR相对应,只是操作的对象为指令寄存器。通过TAP接 口,对数据寄存器(DR)进行访问的一般过程是:
[0040] 1.通过指令寄存器(IR),选定一个需要访问的数据寄存器;
[00411 2.把选定的数据寄存器连接到TDI和TD0之间;
[0042] 3.由TCK驱动,通过TDI,把需要的数据输入到选定的数据寄存器当中去;
[0043]同时把选定的数据寄存器中的数据通过TD0读出来。具体地,在Capture-DR状态 中,由TCK的驱动,芯片管脚上的输出信号会被"捕获"到相应的边界扫描寄存器单元中去。 这样,当前的数据寄存器当中就记录了芯片相应管脚上的输出信号。接下来从Capture-DR 进入到Shif t-DR状态中去。在Shi f t-DR状态中,由TCK驱动,在每一个时钟周期内,一位新的 数据可以通过TDI串行输入到数据寄存器当中去,同时,数据寄存器可以通过TD0串行输出 一位先前捕获的数据。在经过与数据寄存器长度相同的时钟周期后,就可以完成新信号的 输入和捕获数据的输出。接下来通过Exitl-DR状态进入到Update-DR状态。在Update-DR状 态中,数据寄存器中的新数据被加载到与数据寄存器的每个寄存器单元相连的芯片管脚上 去。
[0044] 在本发明中,以FPGA为例,对应于将信号(数据)通过与输入管脚相连的边界扫描 寄存器单元加载到输入管脚中,同时通过与输出管脚相连的边界扫描寄存器"捕获" (CAPTURE)该管脚上的输出信号的过程中,复杂的FPGA内部,多个内部用户逻辑共享同一个 JTAG接口,通过采用一路集线器接口总线的方式将加载到输入管脚上的信号传输到相应的 内部用户逻辑,将多个内部用户逻辑返回的数据回送至输出管脚。
[0045] 本发明实施例提供一种JTAG接口与内部用户逻辑之间的连接装置,如图2所示,所 述装置包括集线器模块,JTAG接口通过JTAG总线与所述集线器模块连接,所述集线器模块 通过一路集线器接口总线连接多个内部用户逻辑,所述多个内部用户逻辑通过对应所述各 内部用户逻辑的片选信号选择通信。
[0046] 本发明实施例提供的JTAG接口与内部用户逻辑之间的连接装置,多个内部用户逻 辑连接在同一个总线上,通过片选信号选择通信,由于该装置只有一路总线,故而减少了芯 片的布线资源。同时集线器模块处理也简单化,标准化,同时优化了逻辑结构,提高了时序 性能。
[0047]对于复杂的FPGA,用户往往需要一系列的调试工具来调试他们的设计,例如多个 内嵌逻辑分析仪Debug core同时对多个时钟域进行监控,SERDES调试小工具来动态监控或 调整设置高速串行收发器Transceiver;虚拟10来设置或监控内部状态等。这些内部用户逻 辑调试工具使用同一个JTAG接口,各个内部用户逻辑使用时分复用方式共享JTAG接口。如 图2所示,多个内部用户逻辑连接在同一个集线器接口总线上,集线器接口总线连接集线器 模块,集线器模块通过JTAG总线连接JTAG接口。
[0048] 可选地,所述内部用户逻辑中包括多个逻辑子模块,每个逻辑子模块通过对应所 述逻辑子模块的标识信号选择通信。
[0049] 各个内部用户逻辑中还可能包括多个逻辑子模块,内部用户逻辑中的逻辑子模块 通过与所述逻辑子模块相对应的标识信号选择通信。在FPGA内部,JTAG接口是FPGA中的配 置模块(Conf i gura t i on)的一部分,PC机可以通过JTAG接口对FPGA作编程配置,也可以通过 JTAG接口访问内部用户逻辑。集线器模块是使用逻辑资源实现的功能,各个内部用户逻辑 连接在集线器接口总线上,通过对逻辑子模块标识信号的支持,把支持的User APP在数量 上进行扩展。
[0050] 所述JTAG总线按如下定义:
[0051 ] DRCK_IN:JTAG 门控时钟,
[0052] RESET_IN:JTAG 复位信号;
[0053] SEL_IN:JTAG 接 口选通信号;
[0054] CAPTURE_IN: JTAG接口的CAPTURE DR状态位,当 SEL_IN选通时有效;
[0055] UPDATE_IN: JTAG接口的UPDATE DR状态位,当 SEL_IN选通时有效;
[0056] SHIFT_IN: JTAG接口的 SHIFT DR状态位,当 SEL_IN选通时有效;
[0057] TDI_IN:JTAG串行输入信号;
[0058] TD0_0UT:JTAG串行输出信号。
[0059]所述集线器接口总线按如下定义:
[0060] DRCK_0:输出到所述集线器接口总线的JTAG门控时钟;
[0061 ] C0NF_TDI:输出到所述集线器接口总线的JTAG串行输入信号;
[0062] CAPT_0:来白 JTAG总线的JTAG接□的 CAPTURE DR状态位;
[0063] C0NF_SEL:输出到所述集线器接口总线的对应各个内部用户逻辑的选通信号;
[0064] ID_0:输出到所述集线器接口总线的对应各个内部用户逻辑中的逻辑子模块的标 识?目号;
[0065] HUB_
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1