首页> 中国专利> 一种在系统编程ISP编程模块及其用于FPAA在系统编程的方法

一种在系统编程ISP编程模块及其用于FPAA在系统编程的方法

摘要

本发明公开了一种在系统编程ISP编程模块及其用于FPAA在系统编程的方法,该方法在兼容JTAG标准的基础上,对标准JTAG结构进行了改造,扩展了指令集;使用该方法实现的在系统编程模块集成在FPAA器件中;在进行ISP编程时,首先通过JTAG接口输入指令控制集成在FPAA器件内JTAG TAP状态机的运行状态;其次是通过TAP状态机控制编程数据的传输、校验和编程;编程是由集成在FPAA芯片上的高压电路对非易失性存储器EEPROM进行编程实现的。本发明提出的基于JTAG IEEE 1149.1标准的应用于FPAA的ISP方法具有实现简单、易于单片集成和编程效率较高的特点。

著录项

  • 公开/公告号CN101916588A

    专利类型发明专利

  • 公开/公告日2010-12-15

    原文格式PDF

  • 申请/专利号CN201010259990.2

  • 发明设计人 刘智;

    申请日2010-08-23

  • 分类号G11C16/02;G11C16/06;

  • 代理机构西安通大专利代理有限责任公司;

  • 代理人陆万寿

  • 地址 710054 陕西省西安市太乙路189号

  • 入库时间 2023-12-18 01:26:38

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-08-09

    未缴年费专利权终止 IPC(主分类):G11C16/02 授权公告日:20121121 终止日期:20180823 申请日:20100823

    专利权的终止

  • 2012-11-21

    授权

    授权

  • 2011-02-02

    实质审查的生效 IPC(主分类):G11C16/02 申请日:20100823

    实质审查的生效

  • 2010-12-15

    公开

    公开

说明书

技术领域:

本发明属于半导体领域,涉及一种半导体集成电路,尤其是一种用于FPAA(Field-programmable analog arrays)的在系统编程(ISP,In-System Programmability)方法。

背景技术:

在系统编程ISP(In-System Programmability)指利用EEPROM或FLASH来存储编程信息,在印刷电路板上对电子系统中一个或多个可编程逻辑器件进行编程或改写的技术。当前ISP技术可分为专用方法和标准方法。专用方法是可编程器件生产厂家采用针对本公司器件结构的专用编程算法作为在系统编程算法;标准方法即针对具有JTAG边界扫描机构的可编程逻辑器件采用JTAG编程算法作为在系统编程算法。几乎所有的可编程逻辑器件制造商都在IEEE1149.1标准的基础上提供ISP功能。

与可编程逻辑器件相对应,现场可编程模拟阵列FPAA(Field Programmable Analog Array)器件属于可编程模拟器件,是一类新型集成电路。该电路属于模拟电路,即电路的输入、输出以及器件内部的状态均为时间连续变化,且幅值未经过量化的模拟信号,同时,它又同可编程逻辑器件一样,可由用户通过现场编程和软件来改变其内部连接和元件参数,从而获得所需要的电路功能。

可编程模拟阵列FPAA的基本结构(图1)一般是由可配置模拟模块(Configurable Analog Block,CAB)和可配置互连网络(Configurable Interconnect Network,CIN)为核心,配合配置存储器,输入/输出模块(I/O Block)等共同构成。可配置模拟模块CAB作为FPAA的核心部分,用于实现模拟电路的主要功能,一般由运算放大器、可编程开关阵列、可编程电容阵列以及可编程电阻阵列等构成。可配置互连网络CIN主要由可编程开关阵列构成。因此,FPAA中需要进行编程的模块主要为:可编程开关阵列、可编程电容阵列和可编程电阻阵列。

FPAA作为一种可编程的高精度模拟集成电路,现场编程和配置技术是FPAA的关键技术之一。由于FPAA器件结构的特殊性,一般生产厂家采用针对本公司器件结构的专用编程算法作为在系统编程算法。

发明内容:

本发明提出的一种适用于现场可编程模拟阵列FPAA的ISP编程方法,实现了在系统编程配置模块集成在FPAA器件中,无需专门的下载适配器,只需JTAG标准接口即可完成在系统编程,从而有效的提高了FPAA的编程效率。

本发明的具体技术方案如下:

一种在系统编程ISP编程模块,所述ISP编程模块由器件ID寄存器1、旁路寄存器2、指令寄存器3、配置寄存器4、高压编程模块5、多路选择器6、指令译码逻辑7、ISP控制逻辑8、TAP控制器9、EEPROM阵列模块10、可编程开关阵列11、可编程电容阵列12和可编程电阻阵列13构成;所述ISP控制逻辑8和TAP控制器9构成该ISP编程模块的控制部分,用于产生状态机的各个状态,控制TDI到TDO之间的连接通路,用户控制指令通过TDI由外设输入,在ISP控制逻辑8的控制下,用户控制指令被移入指令寄存器,再由指令译码电路翻译指令并执行相应的操作;所述配置寄存器4一般由N位串行寄存器构成,寄存器的个数依据PAC块的配置EEPROM单元个数而定;所述指令寄存器3和指令译码逻辑7共同完成指令的存储与译码,并把命令信息传递到ISP控制逻辑8,控制ISP模块的运行。

所述TAP控制器是一个由时钟和测试模式控制的状态机,共包含了16个工作状态,每个工作状态不仅与当前的TCK和TMS值有关,而且还与TAP状态机的前一个状态有关;TAP控制器的ASM图表是对称的,通过一条路径控制数据寄存器的行为动作,用另一条路径控制TAP指令寄存器的行为动作。

所述旁路寄存器2占据一位,当没有其他寄存器被选中时,旁路寄存器在TDI与TDO之间提供一个一位的串行连接,旁路寄存器能够在不影响器件正常工作的情况下允许数据通过一个器件传入到另外一个器件,实现菊花链连接。

基于所述ISP编程模块的FPAA在系统编程方法:

(1)通过JTAG接口输入指令,控制集成在FPAA器件内JTAG TAP状态机的运行状态;

(2)通过ISP控制逻辑8控制编程数据的传输、校验和编程;

所述编程是由集成在FPAA芯片上的高压编程模块5对非易失性存储器EEPROM阵列模块10进行编程实现的。

所述步骤(2)是指编程时,下载移位寄存器中的数据在电荷泵高压下被一次性写入EEPROM存储单元中。写入完成后,ISP控制逻辑8会执行VERUSR(校验)指令将写入的信息读入用户寄存器,再由TDO输出来验证写入信息的正确性。

本发明提出了一种应用于FPAA的基于JTAG标准的ISP器件编程方法,该方法在兼容JTAG标准的基础上,对标准JTAG结构进行了改造,扩展了指令集;使用该方法实现的在系统编程模块集成在FPAA器件中。

在进行ISP编程时,首先通过JTAG接口输入指令控制集成在FPAA器件内JTAG TAP状态机的运行状态;

其次是通过TAP状态机控制编程数据的传输、校验和编程;

编程是由集成在FPAA芯片上的高压电路对非易失性存储器EEPROM进行编程实现的。

现场编程和配置技术(ISP)是可编程模拟阵列(FPAA)的关键技术之一。本发明提出的基于JTAG IEEE 1149.1标准的应用于FPAA的ISP方法具有实现简单、易于单片集成和编程效率较高的特点。

附图说明:

图1为本发明的可编程模拟阵列FPAA结构简图;

图2为本发明的带有JTAG存取端口的ISP模块结构图;

图3为本发明的TAP控制状态机的ASM图。

其中:1为器件ID寄存器;2为旁路寄存器;3为指令寄存器;4为配置寄存器;5为高压编程模块;6为多路选择器;7为指令译码逻辑;8为ISP控制逻辑;9为TAP控制器;10为EEPROM阵列模块;11为可编程开关阵列;12可编程电容阵列;13可编程电阻阵列。

具体实施方式:

下面结合附图对本发明做进一步详细描述:

可编程模拟阵列FPAA结构简图如图1所示,通过把编程数据写入配置数据存储器完成FPAA的结构配置。

使用本发明实现的应用于FPAA的在系统编程ISP编程模块如图2所示,由器件ID寄存器1、旁路寄存器2、指令寄存器3、配置寄存器4、高压编程模块5、多路选择器6、指令译码逻辑7、ISP控制逻辑8、TAP控制器9、EEPROM阵列模块10、可编程开关阵列11、可编程电容阵列12、可编程电阻阵列13构成。该编程模块集成在FPAA器件中。

该编程模块的控制部分由ISP控制逻辑8和TAP控制器9构成。TAP控制器9是一个由模式TMS和时钟TCK驱动的Moore状态机;ISP控制逻辑8是针对FPAA的应用,在基于TAP状态机基础上设计的辅助控制逻辑,并由其对整个ISP模块发出控制命令。用户控制指令通过TDI由外设输入,在ISP控制逻辑8的控制下,用户控制指令被移入指令寄存器,再由指令译码电路翻译指令并执行相应的操作。

ISP控制逻辑8和TAP控制器9用于产生状态机的各个状态,控制TDI到TDO之间的连接通路,不仅可以选择数据寄存器和指令寄存器,而且还发出控制信号,例如,编程、擦除、校验等等。TAP控制器9的ASM图如图3所示,TAP控制器是一个由时钟和测试模式控制的状态机,共包含了16个工作状态,每个工作状态不仅与当前的TCK和TMS值有关,而且还与TAP状态机的前一个状态有关。TAP控制器的ASM图表基本上是对称的,通过一条路径控制数据寄存器的行为动作,用另一条路径控制TAP指令寄存器的行为动作。

FPAA的用户寄存器是由设计者定义的用于特殊目的的一些寄存器,它能够实现配置数据的下载、读出、以及验证。它们的结构为串行移位寄存器。如图2所示,用户寄存器由器件ID寄存器1、旁路寄存器2、配置寄存器4构成。

器件ID寄存器设计为32位,内容包括器件的类型、版本以及工艺制造信息等。IDCODE寄存器是一个能立即执行的寄存器,当电路启动,或着通过TRST端初始化。状态机进入Test-Logic-Reset指令状态时,连接TDI与TDO之间的便是IDCODE寄存器,用于校验电路型号是否正确。

旁路寄存器2占据一位,当没有其他寄存器被选中时,旁路寄存器在TDI与TDO之间提供一个一位的串行连接,旁路寄存器能够在不影响器件正常工作的情况下允许数据通过一个器件传入到另外一个器件,实现菊花链连接。这点在多个器件串行下载时很重要,不执行操作的器件,通过将旁路寄存器连接在TDI与TDO之间,这时其它的器件可以执行编程、擦除等操作。

配置寄存器4一般由N位串行寄存器构成,寄存器的个数依据PAC块的可要配置EEPROM单元个数而定。

指令寄存器3和指令译码逻辑7共同完成指令的存储与译码,并把命令信息传递到ISP控制逻辑8,控制ISP模块的运行。根据实际需要,增加指令并修改相应指令译码逻辑,可以完成用户特殊功能要求。

在进行ISP编程时,首先通过JTAG接口输入指令,控制集成在FPAA器件内JTAG TAP状态机的运行状态;其次是通过ISP控制逻辑8控制编程数据的传输、校验和编程;编程是由集成在FPAA芯片上的高压编程模块5对非易失性存储器EEPROM阵列模块10进行编程实现的。

FPAA的数据配置采用EEPROM编程控制传输门开关的方式。配置执行过程如下:编程时,下载移位寄存器中的数据在电荷泵高压下被一次性写入EEPROM存储单元中。写入完成后,ISP控制逻辑8会执行VERUSR(校验)指令将写入的信息读入用户寄存器,再由TDO输出来验证写入信息的正确性。

多路选择器6用于确定输出端TDO与各寄存器之间的连接关系,TDI与TDO之间连接的寄存器,由ISP控制逻辑8发出的控制信号决定。

以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施方式仅限于此,对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单的推演或替换,都应当视为属于本发明由所提交的权利要求书确定专利保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号