CN1349630A - 提供现场可编程系统级装置的软件工具 - Google Patents

提供现场可编程系统级装置的软件工具 Download PDF

Info

Publication number
CN1349630A
CN1349630A CN00807014A CN00807014A CN1349630A CN 1349630 A CN1349630 A CN 1349630A CN 00807014 A CN00807014 A CN 00807014A CN 00807014 A CN00807014 A CN 00807014A CN 1349630 A CN1349630 A CN 1349630A
Authority
CN
China
Prior art keywords
fpslic
software
fpga
design
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN00807014A
Other languages
English (en)
Inventor
马丁·托马斯·梅森
戴维·安德鲁·马克康纳尔
阿吉斯库马·文卡塔·达萨里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Atmel Corp
Original Assignee
Atmel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Atmel Corp filed Critical Atmel Corp
Publication of CN1349630A publication Critical patent/CN1349630A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • G06F30/343Logical level

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种共同检验现场可编程系统级集成电路(FPSLIC)的硬件仿真和现场可编程系统级集成电路的软件仿真的方法和系统。以硬件仿真FPSLIC(42),然后生成FPSLIC装置的仿真器端口布局(47)。该方法用指令集仿真器(54)以软件独立地访真FPSLIC装置并输出来自于指令集软件的寄存器内容。以寄存器内容(61)检验来自仿真器端口布局(47)的内容。另外,所述的方法可进一步包括输出来自于指令集仿真器(54)的外围设备内容(62),并以外围设备内容(62)检验来自于指令集端口布局(47)的内容(50)。自指令集仿真器(54)也可输出UART内容(63),并以该UART内容(63)检验来自于指令集端口布局(47)的内容。

Description

提供现场可编程系统级装置的软件工具
技术领域
本发明涉及现场可编程系统级集成电路(FPSLIC),特别是涉及用于共同检验FPSLIC装置的硬件仿真和软件仿真的方法和系统。
相关技术
系统级集成(SLI)正很快变为优选的完成电子设计的方法。将系统的所有功能集成在系统级集成电路(IC)中能提高性能、降低功耗、削减单位生产成本并允许产品做得更小。这些在电信、多媒体和网络应用中是特别重要的益处。
一个“系统”包括三个主要的组件块:处理器、存储器和逻辑块。通常,处理器用于控制流程逻辑,存储器用于程序和数据的存储,逻辑块用于数据路径逻辑。一个实际的系统级解决方案必须包括所有这三种组件块。ASIC解决方案
到现在为止,系统级集成主要通过以单元为基础的和掩模特定应用集成电路(ASIC)来实现,因为这些是仅有的具有足够的密度以处理系统级设计的可用的解决方案。可惜,ASIC具有高的非再现工程(NRE)成本、长的研制周期和显著的最小指令数。结果,系统级ASIC实现仅对于具有相对较长的产品生命周期的最高容量的设计来说是可以接近的。对于系统级ASIC的最小容量要求目前通常是每年每设计超过500,000美元。具有短的产品生命周期、低于中等容量的容量、推向市场的时间压力或快速发展的标准的设计负担不起与ASIC方案有关的长的开发周期、风险和高的NRE费用。
即使当ASIC解决方案满足了容量/费用的标准时,在设计中要改正错误或改进该设计的任何改动都会留给改进者大量可能无用的部件和另一个长的ASIC设计周期。这对于快速发展的设计例如电信、网络和多媒体中的设计来说特别成问题。对这些和其它的设计来说,可编程的解决方案更好,因为这样的设计可以在开发中和在现场都可随意地改变。ASIC解决方案不是这些设计的选择。
相当数目的这些快速发展的设计通过下列产品的结合得以实现:可编程逻辑、分立的标准产品(微控制器、存储器)和专用标准产品(ASSP)如T1接口、ATM、10/100 PHY和视频/音频编解码器。尽管这种途径提供了快速发展设计的灵活性,但它却不具备单片系统级集成电路的性能、功耗、尺寸和可靠性方面的优点。单片的、可编程的解决方案显然是更好的选择。可编程系统级集成的多种方法
现场可编程门阵列(FPGA)和其它IC的销售者已开发了各种各样的提供可编程系统级集成的途径。这些途径包括“纯游戏”高密度FPGA和结合了FPGA和固定的逻辑功能的混合装置。
目前最广泛地被推崇的获得可编程SLI的方法是Xilinx的Virtex和Altera的APEXFPGA系列,它们自称可多达一百万的门。尽管工业分析家们认为这些门数实际上可能被夸大了,但这些装置仍然是大得足以支持设计的系统级集成,否则设计的系统级集成会转而利用掩模或单元为基础的ASIC了。FPGA现在不仅在密度方面与掩模ASIC竞争,而且低密度的FPGA还可与掩模ASIC在价格方面竞争。高密度FPGA正被提议作为系统级集成的可编程的、单片的解决方案。尽管大型的FPGA的可编程性非常诱人,它们却存在一些显著的缺点。
尽管深层亚微米工艺技术已降低了低密度和中密度FPGA的价格,以使在许多情况下FPGA的价格与ASIC相同,但大门数的FPGA装置仍是非常昂贵的。例如,Xilinx的百万门Vertex XCV1000装置目前每个卖4,298.00美元。这些装置极高的价格限制它们仅能用于少量的价格非常高的产品的以ASIC为原型的模仿和生产过程。如果认为相当密度的掩模ASIC花费大约50美元的话,这些大的FPGA则超出了大多数设计/应用的容量。
尽管FPGA装置可使ASIC的开发周期减半,但大型FPGA的复杂性却带给系统级设计一个长的设计和发展过程。今天,“推向市场的时间”是一项产品成功与失败的区别。设计一个百万门FPGA逻辑电路需耗费大量时间。常常用具有知识产权(IP)的核心来减少设计周期。但是,集成销售者在设计中提供软IP本身通常是一个麻烦和耗费时间的过程。
仿真是大型FPGA的另一个问题。HDL仿真对于仿真大型设计出奇地慢,特别是使用复杂的软IP核心时。仿真一个一百万门FPGA设计耗费的时间那样长以致许多设计者并不完全进行仿真甚或一点都不进行仿真。结果这些设计更可能含有未被发现的错误,以致延长了调试的周期,更进一步地,这会延迟产品的推出。
如果在大型FPGA设计中使用微控制器软IP核心,则此问题会更加严重。传统的MCU设计方法不能用于基于设计流程的大型FPGA的设计者。一般地,微控制器设计者具有用于调试微编码的代码开发和调试工具。这些工具通常不能用于大型FPGA所使用的软IP核心,因此代码开发和调试工具对于大型FPGA来说即使不是不可能的也是成问题的。更进一步讲,由于缺乏处理器核心可用的代码开发和调试工具,这些设计的微控制器部分的集成和调试是非常困难的,类似的问题在系统级FPGA设计的定时分析方面也易遇到。
对设计系统级FPGA的复杂性的一种解决方案是使用“混入(drop-in)”软知识产权核心。存储器、逻辑块和数量有限的处理器IP核心可由第三方销售者处购买并混入大型FPGA。但是,软IP核心昂贵,难于集成进设计中并往往导致硅效率低。集成来自不同的第三方销售者的IP核心的困难可显著延长产品开发周期。例如,由法国的Dolphin提供的Xilinx Virtex的8051核心,花费了超过10,000美元获得许可,并使用1010CLB或XCV1000的16.4%。在每个XCV1000的价目表上的价格为4298美元的情况下,8051核心的硅消耗为704美元,不包括核心自身的成本。
“Flip-8051核心构成一系列处理器的心脏,这些处理器包括象微控制器配置一样的更低的性能选择,微控制器配置包括外围设备,例如计时器和串行接口。EDIF格式的Virtex FPGA从10,000美元这样低的价格起价。其它设计文件格式也可用。带有测试台的VHDL源代码版本是可用的,测试台需额外的花费。”1999年3月23日,Xilinx股份有限公司。
另外还有与建立各种核心之间的接口和纠正定时问题有关的设计问题。研究显示,高达一半的一般设计工作用于集成和测试阶段,该集成和测试阶段实际上已成为纠正从设计周期的开始起所累积的错误的习惯做法。在多地点、多工程师的开发队伍工作于大型FPGA为基础的系统时,这些问题更加突出了。这些错误通常都可回溯至规约和划分阶段,在那里硬件/软件接口的多义性被引入,并且该多义性随后在硬件/软件的实现阶段被放大。根据研制周期长和ASIC或大型FPGA转变耗费高的特点,对这些错误的修复常常被强制置入软件,尽管软件修复会导致对最终产品的性能或功能的损害。
尽管FPGA代表一种实现数据路径功能的有效方式,但控制逻辑更适于CPLD或微控制器设计。以FPGA实现逻辑控制的硅效率不高。这可由Altera在他们的下一代的大型FPGA中完成的设计方面的变化说明。在这些大型装置内包含CPLD逻辑块这一事实清楚地说明了目前同类的大型FPGA解决方案在实现控制流程程逻辑方面的无力。虽然在Altera APEX设计中包含有CPLD结构以帮助控制流程,但CPLD的解决方案在实现控制流程和决策制定方面比起微控制器来说仍是缺乏有效性的。
例如,邮件分拣系统必须用高速摄像机获取每封邮件上的可视数据;将数据由模拟状态转换为数字状态;对之进行预处理以识别地址的位置和方向;处理地址像素以对地址进行译码然后生成可被分拣机阅读的机器可读代码。仅识别图像中的地址就要求巨大数量的数据处理,因为每个象素都要与其周围的所有像素进行比较。由于图像的那么多部分都有可能是无关的,因此用处理器来处理整个图像会是不经济的和慢的。以FPGA为基础的DSP算法可用于滤掉图像中不可能是街道地址部分的那些部分。这个过程消除掉了图像的绝大部分,因此将处理的问题削减至易处理的程度。FPGA对这些类型的操作是理想的,并且比起DSP处理器来能够明显更快地执行这些操作。
另一方面,处理器在执行图像提取、消除扭曲、旋转和数据解释的算法方面比FPGA更有效。FPGA对这些任务来说并非是足够的,因为这些任务还包含了相当数量的复杂的“决策”制定(控制流程)。它们对于完成控制流程任务来说确实是太慢了。用FPGA核心单元(LAB/CLB)实现能够执行上述任务的处理器是困难的,而且硅效率很低,因此是非常昂贵的。由于所有的系统都包括数据路径和控制流程逻辑,通用目的FPGA中的系统级集成从不可能是非常有效的。简言之,通用目的FPGA本身并非解决方案。
功耗包括三部分:静态功耗、动态功耗和输入/输出(I/O)或系统功耗。静态功耗是装置中晶体管数目的函数,其随FPGA尺寸增加。但是,通过仔细的设计,即使大型FPGA也可具有非常低的功耗。第二种功耗源是动态功耗,是在I/O结构中消耗的。输出每次从一种逻辑状态切换至另一种逻辑状态都要消耗相当多的电能。印刷电路板(PCB)上的电容负载是这种功耗的原因。通过集成减少系统中部件的数目可显著地降低这方面的系统功耗。由于绝大多数大型FPGA仍要与高带宽微控制器总线连接,通过这种接口仍要耗掉相当多的电能。
第三部分功耗是动态的。用于设计实施的大量核心单元和内部时钟分配树的结合对于功耗有显著的贡献。结果,必须用于SLI设计的更大型的FPGA会成比例地消耗更多的电能。大型FPGA中的可编程SLI可能消耗大量的电能。
因为以上问题,仅增加FPGA的密度可能不是获得具有系统级集成的可编程性的最实际的解决方案。
近来,少数无名的IC业开创者已开发了集成具有硬布线的微处理器核心的可编程逻辑块的混合装置。这些装置的提出喻示了对于定位于系统设计的SLI需要的产品需求。
这些装置专用性太强以致不能归入通用的SLI类。例如,Triscend的可配置的8052EV5微控制器被定位于作为具有外围设备的单片MCU的替代品,该外围设备被设计在具有5,000至30,000个门的片上FPGA内。这些装置提供给嵌入系统设计者定做的MCU变型从而不必要使100,000单位的传统MCU销售者要求考虑创作一个变型。
另一个硅谷的开创者是Chameleon Systems,它已宣布还要推出“可重新配置的网络处理器”。尽管产品细节还没公开,所有的指示都指向一种定位于具体的电信/网络应用的专用产品。
Chameleon将集中注意力于物理接口(PHY)和接入网之间的复杂的通信处理要求,接入网在数据网络和电信市场的融合方面很流行。
专用的以FPGA为基础的装置:Lucent Technologies和Quicklogic都已宣布了包括特殊功能的FPGA,特殊功能如PCI。但没有一个公司推出真正的具有处理器、存储器和数据路径逻辑的系统级产品。
这些解决方案中没有一种提供真正的具有支持系统级设计方法的设计工具的可编程系统级集成,即可编程的逻辑、微控制器和存储器。
发明内容
本发明的一般目的是允许可编程逻辑的使用者容易地设计FPSLIC装置。该装置包括复杂的块,例如:微处理器,如AVR、ARM和8051;嵌入式存储块,如RAM,ROM和EEPROM;接口电路,如SPI、USB、PCI和I2C;FPSLIC装置,如AT40K。该装置所包括的复杂的块并不限于上面所举的例子。
本发明的另一目的是作为设计和方法管理程序的软件工具。
本发明的又一目的是通过基于在设计管理程序中选择的装置的各种各样的CAE开发工具的变化而具有设计流程的软件工具。
如在此处具体化的和广义描述的,本发明提供了一种共同检验现场可编程门阵列(FPGA)的硬件仿真和现场可编程门阵列的软件仿真的方法。该方法包括以硬件仿真FPGA装置的步骤和从硬件的仿真中生成FPGA装置的仿真器端口布局的步骤。
FPSLIC装置包括现场可编程门阵列(FPGA)核心,微控制器和存储器。FPGA核心包括多个门,例如可以是以SRAM为基础的FPGA八边的逻辑单元结构。该逻辑单元结构在不影响总线资源的条件下可执行复杂的功能。
多个门通过外部NVM、配置存储器或微控制器是可编程的。例如,一个特殊的应用要求微控制器的程序为该应用设置FPSLIC装置FPGA可编程逻辑。在许多应用中,FPGA中载入的逻辑状态在电源开启时装入。
用于该应用的软件可存储在存储器中。存储器包括动态分配程序存储器、固定数据存储器和存储器控制器。动态分配程序存储器举例而言可以是用于程序指令存储的20纳秒SRAM的32千字节(16K×16或32K×8)块。如果不是需要所有的32千字节的话,那么程序存储器可在设计开发阶段被分为八个4千字节块以提供另外的数据存储器存储。另外,固定数据存储器可以是八个4千字节,或通过加上动态分配程序存储器分出的部分而增加。
硬件倍增加速器能够使微控制器快速而有效地执行复杂的数字信号处理(DSP)操作。
本发明的其它目的和优点部分将在下面的描述中陈述,部分从该描述中可显而易见地得到,或可通过本发明的实践认识到。本发明的目的和优点也可通过在后附的权利要求中特别指出的工具和组合而理解和认识到。
附图说明
结合进说明书并构成说明书一部分的附图说明本发明的优选实施例,并与本说明一起用于解释本发明的原理。
图1A和1B是FPSLIC装置的框图;
图2说明对硬件和软件、流程和仿真的共同检验;
图3是具有共同检验的硬件流程和仿真及软件流程和仿真的流程图;
具体实施方式
现在结合附图详细说明本发明的优选实施例,附图中同样的标号指示同样的部件。
对将现场可编程门阵列推向市场的时间不断提高的要求使管理和紧密集成各种各样的分立的‘点’计算机辅助工程(CAE)工具的软件工具成为必要。CAE工具可被设计者广泛地用于开发FPSLIC装置的代码。
本发明将可编程性与系统级集成结合起来以开发一系列具有特殊专用功能的系统级集成电路(IC),该系统级集成电路提供了一种在芯片上制作系统的硅效率高的手段。现场可编程系统级IC(FPSLIC),例如,包括用于数据路径逻辑的ATMEL AT40K FPGA、用于控制逻辑的以RISC为基础的AVR微控制器、硬件乘法器、MCU外围设备和32千字节SRAM,这些是一个系统的所有组件块。FPSLIC结构对于实现网络、电信、多媒体、音频、手持式、移动式和工业控制的应用来说是理想的。
如图1A和1B所示,现场可编程系统级集成电路(FPSLIC装置)20包括现场可编程门阵列(FPGA)核心21、微控制器22和存储器。FPGA核心包括多个门,如所示的以SRAM为基础的AT40K FPGA八边逻辑单元结构75。逻辑单元结构75在不影响总线资源的条件下执行复杂的功能。分立的自由RAM十纳秒双端口SRAM块74置于每个4×4单元区域的角上。将这些SRAM块遍布于阵列就把存储器置于所需要的位置并支持高性能的先进先出(FIFO)设计。
多个门通过外部NVM、配置存储器或微控制器22是可编程的。例如,一个具体的应用要求微控制器22中的程序为该应用设置FPSLIC装置FPGA可编程逻辑21。在许多应用中,FPGA中的逻辑状态是在电源开启时载入。该应用所用的软件可存储在微控制器22的存储器中。在操作中,微控制器22为该应用调整工作至FPSLIC可编程逻辑21的门。
存储器包括动态分配程序存储器23、固定数据存储器24和存储器控制器25。动态分配程序存储器23举例而言可以是用于程序指令存储的20纳秒SRAM的32千字节(16K×16或32K×8)块。如果不是所有的32千字节都要求到的话,那么,程序存储器在设计开发过程中可划分为八个4千字节块以提供额外的数据存储器存储。另外,固定数据存储器24可以是八个4千字节,或通过加上由动态分配程序存储器23分出的部分81而增加。
硬件倍增加速器29使微控制器22能够快速而有效地执行复杂的数字信号处理器操作。
FPSLIC解决方案产生于独特的高性能FPGA结构和几个微控制器核心技术。FPSLIC采用了以单元为基础的和掩模的ASIC、及专用标准产品(ASSP)开发、技术和经验以将这些功能结合进硅效率高的、成本经济的系统级装置。
以AVR为基础的FPSLIC产品结合了嵌入有FPGA技术的Atmel的AT40K。AT40K FPGA核心是完全符合PCI的、以SRAM为基础的FPGA可编程逻辑块,其具有分布式的十纳秒可编程同步/异步、双端口/单端口SRAM,68个外部全局时钟和2个AVR全局时钟,高速缓存能力(在不损失数据的条件下可部分或全部地再配置)和10,000至40,000个可用的门。
微控制器在单个的时钟周期内执行指令,以得到每MHz处理一个MIPS的处理能力。实际的处理能力允许系统结构使得相对于处理速度的功耗最佳化。30MIPS微控制器核心基于结合了丰富的指令集和32个通用目的工作寄存器的增强型RISC结构。所有32个寄存器都与算术逻辑单元(ALU)直接连接,允许一个时钟周期内执行的单个的指令进入两个独立的寄存器。这样得到的结构编码效率更高,可获得比传统的CISC微控制器快十倍的处理能力。
存储器由SRAM实现。在系统电源打开的状态下,使用Atmel的系统内可编程的AT17系列EEPROM配置存储器,FPGA配置存储器和微控制器22指令代码SRAM可被自动地装载。通过在单个的可编程装置上结合三个主要的系统组件块,可建立具有足够的灵活性和足够的成本经济性以用作通用目的SLI装置的高性能系统及产品。
FPSLIC EDA工具组System Designer提供了真正的集成系统设计方法和成套的设计工具。FPSLIC是仅有的包括共同检验工具作为标准的可编程解决方案。共同检验简化了虚拟样机的建立,它使在系统集成过程中特别会遇到的问题能够在设计周期中更早地被解决,结果就缩短了设计周期。共同检验也使得能够快速地执行“如果…那怎么办”的权衡比较,从而提高了系统的效率。
FPSLIC硅片和System Designer软件二者已被设计为用来加快推向市场的速度的完全的SLI解决方案。用FPSLIC进行设计
通过集成为以一个可编程的解决方案来创制系统级产品所要求的所有功能,FPSLIC装置提供给使用者一个综合的和集成的解决方案。FPSLIC装置与典型的系统级结构极为相似。它在微控制器存储器和已实现的逻辑之间有公用接口以使设计者能够在不损害灵活性或性能的条件下集中注意力于系统设计的加值部分。
使用现存的标准设计工具外加硬件/软件共同检验意味着可靠的无错误的微控制器和FPGA开发软件与基于软件的系统级仿真的结合。结果是可容易地用效率增强提供并行的软件和硬件设计的开发工具(System Designer)并显著地加速设计开发、减少产品推向市场的时间。
以AT94K0 FPSLIC装置实现前述的邮件分拣的例子的方案会以下述方式分配系统任务:FPSLIC装置中的AT40K FPGA阵列预处理像素化的数据以确定可能的供选择的地址的位置。FPSLIC的微控制器22和硬件乘法器承担提取图像、旋转和消除扭曲的任务。中间数据存储在片上SRAM中以能保持最大的系统处理能力。
这种存储器(SRAM)、逻辑块(FPGA)和微控制器22在单个的SLI装置上的结合提供了SLI设计的数据路径(逻辑块)和控制流程(AVR微控制器)方面的有效实现。代替将设计“削足适履”式地纳入单一的FPGA的解决方案的是,FPSLIC装置提供了系统各方面的有效的实现。硅有效利用性的结果是更小的芯片尺寸、快的开发速度、高性能设计和低的功耗。FPSLIC装置的经济性非常显著,该装置的成本比起大型FPGA解决方案要少两个数量级。通常与硅有效利用性有关的选择方案都缺乏灵活性,但使用具有FPGA和动态分配SRAM存储器的高性能的RISC微控制器却兼备了有效性和灵活性。
在FPSLIC装置中,系统级集成所要求的知识产权(IP)是该装置的一个内在部分。外加的IP块,例如来自于可参数化的宏发生器库中的IP块,可加于设计的FPGA(逻辑块)部分。与大型FPGA不同,集成软件IP处理器的仿真、布局和定时的问题大都从FPSLIC部分移走。这就加快了推向市场的速度并且使设计者能够集中注意力于SLI设计的加值方面。以逻辑为基础的软IP核心可被用于FPSLIC装置,如果该设计的逻辑部分要求这样做的话。
与FPGA或分立的解决方案相比,FPSLIC的多个特征可显著地削减功耗,其中包括对逻辑资源的更有效的使用。由于包括了用于控制逻辑实现的“硬”微控制器核心,FPSLIC节约了损耗在逻辑资源的电能。大型FPGA中的“软”微控制器核心实际上要求更多的逻辑门,也就消耗了更多的电能。
由于FPSLIC装置集成了所有要求的系统块,FPSLIC消除了I/O端口和与PCB上的器件间连接有关的电容性负载,从而显著地节约了系统所用电能。
FPSLIC装置包括FPGA时钟树结构,该结构被划分为小段,因此FPSLIC装置如所要求的那样仅驱动至寄存器的时钟线。在一个一般的设计中,时钟划分可节约FPSLIC装置的FPGA部分的动态功耗的50%。
FPSLIC中的微计算机22可获得30+MIPS处理能力,允许被用于“猝发模式”处理。“猝发模式”处理允许AVR在非常短的时间内完成处理,然后AVR在大部分的时间内被置于电源关的状态,由此节省许多电能。
FPSLIC装置中的FPGA和微控制器的结合使FPGA核心能够部分重置。结果,可重置单个设计以服务于几个目的,由此既节约硅片也节约电能。
这种系统内可重置性对于必须能够实现多标准的设计特别有用,例如正在开发的用于第三代移动通信的“软无线电通信”。单个FPSLIC可包含能使它在任何位置和环境下都能操作的多个移动电话(基带)标准。在宽带码分多址(W-CDMA)作为标准的地方,FPSLIC装置中就载入W-CDMA设计。当电话使用者旅行至一个GSM作为标准的地方,例如欧洲,就可通过空中无线通信将GSM设计重置入FPSLIC装置中。这对于用户来说是十分明了的,但它却将允许单个的FPSLIC装置能够用于多种不同的系统级移动电话标准。
Atmel的System Designer EDA工具组通过支持递增的设计变化、广泛的库控制和比特流应用可支持可重置的计算,另外的可重置的计算工具可于1999年晚些时候得到。
在不远的将来,个人数字助理(PDA)、移动电话、寻呼机和卫星全球定位系统都将被压缩进单个的手持PDA型装置。FPSLIC装置的高性能、可重配置性和非常低的功耗使它们对于这些移动装置来说是理想的。
PDA一般有次序地以不同的专用模式操作。例如,在一种模式下PDA获取输入的笔迹。在另一种模式下它执行红外数据的发送。在第三种模式下它可支持调制解调器传输。通过使用系统内可编程SLI装置例如FPSLIC,单个的系统级IC可以最小的功耗有效地支持许多种模式。
在笔迹获取模式中,FPSLIC的FPGA会扫描屏幕并处理红外数据,同时微控制器22会处理决策制定和数据显示。如果PDA用户决定他/她需要向另一个用户发送数据或接收来自于另一个用户的数据,FPGA中就装入红外逻辑模式(IrD链接)设计以替代笔迹获取模式。重新配置的PDA会发送数据,利用AVR微控制器处理数据打包和压缩,利用FPGA处理CRC检验、物理层逻辑和握手。在发送完成后,IrD链接逻辑就不需要了,FPSLIC装置可能重新配置,通过将高性能UART装入FPGA,有次序地向备份PC或打印机发送所接收到的数据。(FPSLIC片上UART也可被用到。)总之,FPSLIC装置中的单个FPGA硅片可重复多次使用于系统中的不同应用。重新配置FPSLIC FPGA就得到了更小的、功耗更低的和更经济的解决方案。设计工具
设计、仿真和调试ASIC或ASSP设计至多不过是一个吓人的任务。设计非常大的FPGA也同样地麻烦。即使设计者有信心能够进入微控制器的软IP核心,他/她也会面临一些严重的设计工具挑战。位置和路由次数、设计的复杂性、不同IP销售者的IP之间的互相作用和设计性能等问题仅是FPGA设计者所面临的巨大挑战中的一部分。
与没有为适应与完成SLI有关的另外挑战而改变的大型FPGA设计工具组不同,FPSLIC设计工具与FPSLIC结构并行开发,以确保在可编程逻辑和工具的微控制器区域之间的无缝的开发环境。
用于FPSLIC系列的设计工具已扩展了它已经建立的‘现场测试的’设计工具。设计方法与利用微控制器、FPGA和存储器的分立的解决方案相比本质上没有变化。标准FPGA设计工具支持FPSLICFPGA核心。设计者一直用于设计AT40K FPGA的工具,如宏发生器、定时驱动设计、HDLPlanner(tm)、静态定时分析、反向注解(backannotation)和按钮式APR,在FPSLIC System Designer开发工具中的工作方式与在Atmel的IDS FPGA设计工具中的一样。FPSLIC AVR开发工具的工作与Atmel的AVR Studio等效。通过使用已建立起来的当前工艺水平的软件,Atmel已创制了综合的、经检验的软件解决方案。System Designer Co-Verification EDA工具组
FPGA通常用硬件描述语言(HDL)来设计,然后用HDL仿真器来仿真,硬件描述语言的例子如Verilog或VHDL。微控制器的设计通常以C语言或汇编语言完成并用软件调试器或ICE(电路内仿真器)来调试。Atmel所面临的挑战是将这两个解决方案集成进一个环境内,该环境不仅提供容易的产品开发、加快推向市场的速度,而且使设计者在设计过程中及早地对设计的硬件方面和软件方面之间广泛地进行“如果…那怎么办”的分析。
Atmel通过开发System Designer Co-verification EDA工具组已解决了软件/硬件共同开发的问题。硬件/软件共同检验的需要已从传统设计周期所固有的效率和盈利时间障碍中产生了。一般的设计工作中有多达一半被用于集成和检测阶段。实际上这是一种纠正从设计周期开始起所积累的错误的一种工作。这些错误常常一直返回到规约和划分阶段,在那里硬件/软件接口中的多义性被提出然后在硬件/软件实现阶段被放大。由于研制周期长、ASIC转换的成本高,对这些错误的纠正常常被强行置入软件中,即使软件修复可能意味着对最终产品的性能或功能的损害。
System Designer利用它的AVR微控制器指令仿真器和调试工具,无缝地集成Atmel的FPGA设计工具和第三方硬件(verilog/VHDL)仿真器。另外,共同检验框架充分地同步了硬件和软件执行及源代码级和汇编级软件的调试。该工具组提供充分的AVR存储器和寄存器的可视性及充分的硬件设计可视性。System Designer使设计者能够完全自信地完成整个硬件和软件设计。设计者可做出软件/硬件的权衡选择方案并进行测试直至达到最优方案。设计周期可被削减掉90%。除了将软件开发工具与逻辑仿真相结合外,共同检验环境比分立的解决方案提前数月给出高性能的共同检验。共同检验环境使软件和硬件开发能够平行地进行,从关键路径移走软件,减少由于集成错误而导致的硬件模型反复的风险。
System Designer中的FPGA设计软件以Atmel的IDS7.0为基础。它包括宏发生器、HDLPlannertm按钮式自动布局和寻径、芯片布局、定时驱动方案、静态和交互式的定时分析、比特流应用、增加的设计改变能力、结构绘图、反向注解、交互式布局编辑程序和库管理程序。
System Designer提出的按钮式宏发生器促进了用于FPSLIC FPGA阵列的可充分参数化的硬或软知识产权核心(IP)的设计。宏发生器计算宏的功耗、面积和间距。所有的Atmel宏都为AT40K结构进行了最优化。System Designer有多于五十个的宏发生器可被用于创制具有任何复杂性的充分参数化了的IP核心。宏发生器包括:加法器、FIFO、计算器、比较器、解码器、触发器、锁存器、RAM、CRC、整数除法器、线性反馈移位寄存器(LSR)、快速预定标计数器、累加器、演绎器、乘法器、muxes、“非”电路、移相器、ROM、减法器和三态总线控制。这些功能可以在字宽、功率或面积等方面参数化,可容易地做出选择。
由于System Designer的宏发生器是由下拉式菜单调出的,因此设计者仅需点击来产生所需要的功能。一旦宏发生器被调用,对话框就让设计者说明与该宏相适合的任何参数。
设计者也可从Atmel的WWW站点下载复杂的IP核心的详细资料,例如FIR过滤器、IIR过滤器、卷积器和其它能够免费从Atmel的不断增长的FPGA知识产权库中得到的功能。
Atmel的HDLPlanner工具通过自动地产生句法正确的Verilog或VHDL代码使FPGA VHDL或Verilog描述的开发自动化。HDLPlanner可由与System Designer宏发生器工具一起开发的宏产生HDL描述。任何使用HDL-Planner做的设计在装置和技术上都是完全独立的,其可通过使用工业标准的合成工具被合成,以用任何ASIC或FPGA来实现。HDL-Planner自动地以例子说明为Atmel FPGA经过最优化的组件。尽管它们为了AT40K FPGA逻辑已经过了结构上的最优化,以例子说明的组件对于HDL设计的技术独立性没有任何影响。
FPSLIC固件的设计和调试:
Atmel的AVR软件设计环境是System Designer EDA工具组的一个整体部分。它使使用内置的指令集仿真器的AVR程序的开发、执行和调试成为可能。
AVR Studio提供具有程序代码的“源代码”窗口和标明目前正被执行的代码的指示器。它有帮助调试设计的各种各样的图。这些包括以下窗口:显示所限定的符号的值的窗口,包括显示C程序中的实例变量的窗口;显示所有32个AVR的寄存器的内容的窗口;显示由AVRStudio所发出的报告信息的窗口;允许使用者观看并修改所有AVR存储器资源的内容的窗口;示出将要执行的下一个指令的地址和堆栈的值的窗口;显示指示器和从上一次复位经过的时钟周期的数目的窗口;显示外围设备的状态的窗口;显示关于任何AVR定时器/计算器的信息的窗口;显示片上外围设备(UART,SPI)的状态的窗口。
FPSLIC共同检验路径允许HDL仿真器和AVR指令集仿真同时和交互式地运行。由于硬件和软件是共同被设计和调试的,得到第一次就能运行的设计的可能性大大增加了。总的系统开发时间可被削减掉10%至90%。FPSLIC System Designer软件组在其完整性方面和加快推向市场的能力方面是独特的。
System Designer EDA环境是以设计方法的系统方法为基础的。该系统方法包括对硬件和软件进行共同检验。
图2广义地示出了对于硬件流程和仿真31及软件流程和仿真32的共同检验30。硬件流程和仿真是FPSLIC装置20的硬件实现。软件流程和仿真是对FPSLIC装置20或处理器或计算机的软件实现。不过,软件实现32一般是对于有关FPSLIC装置的FPSLIC装置20的纯软件实现。
对于软件流程和仿真32及硬件流程和仿真31的共同检验30是本发明的核心。软件流程和仿真32是容易获得的软件。共同检验30支持在一个整体环境中仿真FPSLIC装置的硬件部分和FPSLIC装置的软件部分。如果在设计中FPSLIC装置20的某些部分发生变化,则可在软件流程和仿真32中做出修改。
在图3所示的实施例中,提供了一种共同检验现场可编程门阵列的硬件仿真和现场可编程门阵列的软件仿真的方法。该方法包括以硬件仿真FPSLIC装置的步骤。
更具体地,运行FPSLIC装置的FPSLIC软件被输入41至FPSLIC装置。FPSLIC软件是利用该装置的应用的仿真。FPSLIC装置软件作为仿真42运行。如果仿真43存在问题,FPSLIC装置软件可被调整或修改、重新输入41,仿真412再次运行。
如果FPSLIC装置软件不存在问题,那么就到合成44,由该合成生成FPSLIC装置软件的网表45。由网表45生成位置和路径46,接着是产生仿真器端口布局47。在FPSLIC装置,对问题48检验仿真器端口布局47的内容,如果存在问题,位置和路径46可做出改变,或在输入41对FPSLIC装置软件做出改变。
如果仿真器端口布局47不存在问题48,则产生实现硅片60中的FPSLIC装置的比特流。
在软件中,上述方法分别包括用处理器或计算机及指令集仿真器仿真FPSLIC装置的步骤和从指令集软件输出寄存器内容的步骤。更详细地讲,为仿真FPSLIC装置编写高级代码51。高级代码例如可以是C语言。高级代码51由编译器52编译为汇编语言。作为选择,也可为FPSLIC装置编写汇编代码,则该过程以汇编代码53开始。
指令集仿真器54将汇编代码作为对FPSLIC装置的仿真来运行。指令集仿真器可为寄存器61、外围设备62、UART端口和软件中其它检验点输出内容。对问题55检验该输出和指令集仿真器54。如果存在问题,就修改高级代码或汇编代码,重新运行指令集仿真器54。
如果不存在问题55,则汇编代码就作为目标代码56输出,然后是程序代码57。程序代码57用于在硅片60中制造FPSLIC装置。
所述的方法进一步包括以寄存器内容检验来自于仿真器端口布局的内容。所述的检验被描述为与检查仿真器端口布局47一样检查寄存器计算器61、外围设备62和UART端口63的内容。由于软件流程和仿真及硬件流程和仿真被交互式检验,共同检验加快了在硅片中实现FPSLIC的过程。
显然,对那些本领域技术人员来说,在不脱离本发明的范围和精神的条件下,可对提供现场可编程系统级装置的软件工具进行各种修改,所要说明的是,如果对提供现场可编程系统级装置的软件工具进行的修改落入了后附的权利要求及其等同内容的范围内,则本发明覆盖这些修改。

Claims (6)

1.一种共同检验现场可编程系统级集成电路(FPSLIC)的硬件仿真和现场可编程系统级集成电路的软件仿真的方法,包括以下步骤:
以硬件仿真FPSLIC装置;
由所述的硬件仿真来生成FPSLIC装置的仿真器端口布局;
以指令集仿真器用软件来仿真FPSLIC装置;
从所述的软件仿真输出来自于指令集软件的寄存器内容;
以寄存器的内容检验来自于仿真器端口布局的内容。
2.根据权利要求1所述的方法,进一步包括以下步骤:
从所述的软件仿真输出来自于指令集仿真器的外围设备内容;
以外围设备的内容检验来自于仿真器端口布局的内容。
3.根据权利要求1所述的方法,进一步包括以下步骤:
从所述的软件仿真输出来自于指令集仿真器的UART内容;
以UART内容检验来自于仿真器端口布局的内容。
4.一种用于共同检验现场可编程系统级集成电路(FPSLIC)的硬件仿真和现场可编程系统级集成电路的软件仿真的系统,包括:
用于仿真FPSLIC装置的硬件仿真器,该硬件仿真器具有FPSLIC装置的仿真器端口布局;
用于仿真FPSLIC装置的软件仿真器,该软件仿真器具有用于输出寄存器内容的指令集仿真器;
用于以寄存器的内容检验来自于仿真器端口布局的内容的检验软件。
5.根据权利要求4所述的系统,其中所述的指令集仿真器输出外围设备内容;和
所述的检验软件用于以外围设备的内容检验来自于仿真器端口布局的内容。
6.根据权利要求4所述的系统,其中所述的指令集仿真器输出UART内容;其中所述的检验软件用于以UART内容检验来自于仿真器端口布局的内容。
CN00807014A 1999-07-16 2000-05-24 提供现场可编程系统级装置的软件工具 Pending CN1349630A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/354,955 US6272451B1 (en) 1999-07-16 1999-07-16 Software tool to allow field programmable system level devices
US09/354,955 1999-07-16

Publications (1)

Publication Number Publication Date
CN1349630A true CN1349630A (zh) 2002-05-15

Family

ID=23395613

Family Applications (1)

Application Number Title Priority Date Filing Date
CN00807014A Pending CN1349630A (zh) 1999-07-16 2000-05-24 提供现场可编程系统级装置的软件工具

Country Status (11)

Country Link
US (2) US6272451B1 (zh)
EP (1) EP1214670A4 (zh)
JP (1) JP2003505768A (zh)
KR (1) KR100476785B1 (zh)
CN (1) CN1349630A (zh)
AU (1) AU5042800A (zh)
CA (1) CA2367972A1 (zh)
HK (1) HK1045577A1 (zh)
NO (1) NO20020177L (zh)
RU (1) RU2002104134A (zh)
WO (1) WO2001006421A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101517576B (zh) * 2006-05-22 2011-10-05 相干逻辑公司 基于软件程序在处理系统上的运行而设计asic
CN102377655A (zh) * 2010-08-19 2012-03-14 盛科网络(苏州)有限公司 软件仿真asic转发的系统和方法

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7120143B1 (en) * 1999-09-15 2006-10-10 8X8, Inc. Voice-over Internet protocol processor
US7072818B1 (en) * 1999-11-30 2006-07-04 Synplicity, Inc. Method and system for debugging an electronic system
US7065481B2 (en) * 1999-11-30 2006-06-20 Synplicity, Inc. Method and system for debugging an electronic system using instrumentation circuitry and a logic analyzer
US7240303B1 (en) 1999-11-30 2007-07-03 Synplicity, Inc. Hardware/software co-debugging in a hardware description language
US6581186B1 (en) * 2000-05-31 2003-06-17 Xilinx, Inc. Methods and systems for providing logic cores from third party logic core providers
US6605962B2 (en) 2001-05-06 2003-08-12 Altera Corporation PLD architecture for flexible placement of IP function blocks
US7076595B1 (en) * 2001-05-18 2006-07-11 Xilinx, Inc. Programmable logic device including programmable interface core and central processing unit
AU2002344288A1 (en) * 2001-05-25 2002-12-09 Annapolis Micro Systems, Inc. Method and apparatus for modeling dataflow systems and realization to hardware
US6667636B2 (en) * 2001-06-11 2003-12-23 Lsi Logic Corporation DSP integrated with programmable logic based accelerators
US6653859B2 (en) * 2001-06-11 2003-11-25 Lsi Logic Corporation Heterogeneous integrated circuit with reconfigurable logic cores
US6976239B1 (en) 2001-06-12 2005-12-13 Altera Corporation Methods and apparatus for implementing parameterizable processors and peripherals
US6757882B2 (en) * 2001-06-16 2004-06-29 Michael Y. Chen Self-describing IP package for enhanced platform based SOC design
ITTO20010667A1 (it) * 2001-07-10 2003-01-10 Telecom Italia Lab Spa Metodo per generare circuiti elettronici.
US6889266B1 (en) 2001-09-05 2005-05-03 Xilinx, Inc. Method for delivering packet boundary or other metadata to and from a device using direct memory controller
US7420392B2 (en) * 2001-09-28 2008-09-02 Xilinx, Inc. Programmable gate array and embedded circuitry initialization and processing
US6781407B2 (en) 2002-01-09 2004-08-24 Xilinx, Inc. FPGA and embedded circuitry initialization and processing
US6798239B2 (en) * 2001-09-28 2004-09-28 Xilinx, Inc. Programmable gate array having interconnecting logic to support embedded fixed logic circuitry
CN1307586C (zh) * 2001-10-16 2007-03-28 捷豹逻辑股份有限公司 高效逻辑打包的现场可编程门阵列核心单元
US6996758B1 (en) 2001-11-16 2006-02-07 Xilinx, Inc. Apparatus for testing an interconnecting logic fabric
US6983405B1 (en) 2001-11-16 2006-01-03 Xilinx, Inc., Method and apparatus for testing circuitry embedded within a field programmable gate array
US6886092B1 (en) 2001-11-19 2005-04-26 Xilinx, Inc. Custom code processing in PGA by providing instructions from fixed logic processor portion to programmable dedicated processor portion
US6754881B2 (en) * 2001-12-10 2004-06-22 International Business Machines Corporation Field programmable network processor and method for customizing a network processor
US20030135802A1 (en) * 2002-01-14 2003-07-17 Klein Jeff C. Verification test method for programmable logic devices
US6820248B1 (en) 2002-02-14 2004-11-16 Xilinx, Inc. Method and apparatus for routing interconnects to devices with dissimilar pitches
US6976160B1 (en) 2002-02-22 2005-12-13 Xilinx, Inc. Method and system for controlling default values of flip-flops in PGA/ASIC-based designs
US6754882B1 (en) * 2002-02-22 2004-06-22 Xilinx, Inc. Method and system for creating a customized support package for an FPGA-based system-on-chip (SoC)
US6941538B2 (en) * 2002-02-22 2005-09-06 Xilinx, Inc. Method and system for integrating cores in FPGA-based system-on-chip (SoC)
US7007121B1 (en) 2002-02-27 2006-02-28 Xilinx, Inc. Method and apparatus for synchronized buses
US6934922B1 (en) 2002-02-27 2005-08-23 Xilinx, Inc. Timing performance analysis
US6839874B1 (en) 2002-02-28 2005-01-04 Xilinx, Inc. Method and apparatus for testing an embedded device
US7111217B1 (en) 2002-02-28 2006-09-19 Xilinx, Inc. Method and system for flexibly nesting JTAG TAP controllers for FPGA-based system-on-chip (SoC)
US7187709B1 (en) 2002-03-01 2007-03-06 Xilinx, Inc. High speed configurable transceiver architecture
US7111220B1 (en) 2002-03-01 2006-09-19 Xilinx, Inc. Network physical layer with embedded multi-standard CRC generator
US7088767B1 (en) 2002-03-01 2006-08-08 Xilinx, Inc. Method and apparatus for operating a transceiver in different data rates
US6961919B1 (en) 2002-03-04 2005-11-01 Xilinx, Inc. Method of designing integrated circuit having both configurable and fixed logic circuitry
US6973405B1 (en) 2002-05-22 2005-12-06 Xilinx, Inc. Programmable interactive verification agent
US7827510B1 (en) 2002-06-07 2010-11-02 Synopsys, Inc. Enhanced hardware debugging with embedded FPGAS in a hardware description language
US6772405B1 (en) 2002-06-13 2004-08-03 Xilinx, Inc. Insertable block tile for interconnecting to a device embedded in an integrated circuit
US6842883B2 (en) * 2002-06-24 2005-01-11 Lsi Logic Corporation Application of co-verification tools to the testing of IC designs
FR2841668B1 (fr) * 2002-06-26 2006-08-11 Emulation And Verification Eng Procede et systeme d'emulation d'un circuit sous test associe a un environnement de test
US7085973B1 (en) 2002-07-09 2006-08-01 Xilinx, Inc. Testing address lines of a memory controller
US7099426B1 (en) 2002-09-03 2006-08-29 Xilinx, Inc. Flexible channel bonding and clock correction operations on a multi-block data path
US7480010B2 (en) * 2002-09-04 2009-01-20 Denace Enterprise Co., L.L.C. Customizable ASIC with substantially non-customizable portion that supplies pixel data to a mask-programmable portion in multiple color space formats
US7782398B2 (en) * 2002-09-04 2010-08-24 Chan Thomas M Display processor integrated circuit with on-chip programmable logic for implementing custom enhancement functions
US7202908B2 (en) * 2002-09-04 2007-04-10 Darien K. Wallace Deinterlacer using both low angle and high angle spatial interpolation
US7092865B1 (en) 2002-09-10 2006-08-15 Xilinx, Inc. Method and apparatus for timing modeling
US6856951B2 (en) * 2002-11-15 2005-02-15 Rajat Moona Repartitioning performance estimation in a hardware-software system
US7146581B2 (en) * 2002-11-15 2006-12-05 Russell Alan Klein Automated repartitioning of hardware and software components in an embedded system
US7155378B2 (en) * 2002-12-16 2006-12-26 Sun Microsystems, Inc. Method for providing cycle-by-cycle ad HOC verification in a hardware-accelerated environment
US7308564B1 (en) * 2003-03-27 2007-12-11 Xilinx, Inc. Methods and circuits for realizing a performance monitor for a processor from programmable logic
US7133818B2 (en) * 2003-04-17 2006-11-07 Sun Microsystems, Inc. Method and apparatus for accelerated post-silicon testing and random number generation
US20040242261A1 (en) * 2003-05-29 2004-12-02 General Dynamics Decision Systems, Inc. Software-defined radio
DE10329147A1 (de) * 2003-06-27 2005-01-20 Siemens Ag Verknüpfung und Darstellung von Signalen einer Vorrichtung zur Hardware-Simulation und Elementen eines Listings eines Programms
US7421014B2 (en) * 2003-09-11 2008-09-02 Xilinx, Inc. Channel bonding of a plurality of multi-gigabit transceivers
US7640155B2 (en) * 2004-06-01 2009-12-29 Quickturn Design Systems, Inc. Extensible memory architecture and communication protocol for supporting multiple devices in low-bandwidth, asynchronous applications
US20060100841A1 (en) * 2004-09-02 2006-05-11 Tung-Ho Wu Automatic system and method for testing mobile phone
US20060111886A1 (en) * 2004-11-23 2006-05-25 Mahesh Siddappa Method and system for modeling of a differential bus device
JP2008522314A (ja) * 2004-12-03 2008-06-26 エヌエックスピー ビー ヴィ 回路モデリングによるデータ処理
US8849642B2 (en) * 2004-12-14 2014-09-30 The Mathworks, Inc. Signal definitions or descriptions in graphical modeling environments
US7793248B1 (en) 2005-11-23 2010-09-07 Altera Corporation Method and apparatus for parameterizing hardware description language code in a system level design environment
US7739092B1 (en) * 2006-01-31 2010-06-15 Xilinx, Inc. Fast hardware co-simulation reset using partial bitstreams
US7506205B2 (en) * 2006-02-14 2009-03-17 Atmel Corporation Debugging system and method for use with software breakpoint
JP2008065640A (ja) * 2006-09-07 2008-03-21 Toshiba Corp シミュレーション装置およびそのシミュレーション制御方法
US8219785B1 (en) * 2006-09-25 2012-07-10 Altera Corporation Adapter allowing unaligned access to memory
US8155428B2 (en) * 2007-09-07 2012-04-10 Kla-Tencor Corporation Memory cell and page break inspection
US20090067722A1 (en) * 2007-09-07 2009-03-12 Kla-Tencor Corporation Memory cell and page break inspection
US8402438B1 (en) 2007-12-03 2013-03-19 Cadence Design Systems, Inc. Method and system for generating verification information and tests for software
US8504344B2 (en) * 2008-09-30 2013-08-06 Cadence Design Systems, Inc. Interface between a verification environment and a hardware acceleration engine
US8930912B2 (en) * 2008-12-16 2015-01-06 Cadence Design Systems, Inc. Method and system for performing software verification
US20110289469A1 (en) * 2010-05-21 2011-11-24 Huang Thomas B Virtual interconnection method and apparatus
US8595683B1 (en) * 2012-04-12 2013-11-26 Cadence Design Systems, Inc. Generating user clocks for a prototyping environment
US10235485B1 (en) 2016-09-27 2019-03-19 Altera Corporation Partial reconfiguration debugging using hybrid models
CN112100954B (zh) * 2020-08-31 2024-07-09 北京百度网讯科技有限公司 验证芯片的方法、装置和计算机存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5377124A (en) * 1989-09-20 1994-12-27 Aptix Corporation Field programmable printed circuit board
US5448522A (en) * 1994-03-24 1995-09-05 Quickturn Design Systems, Inc. Multi-port memory emulation using tag registers
US5771370A (en) * 1996-05-14 1998-06-23 Mentor Graphics Corporation Method and apparatus for optimizing hardware and software co-simulation
JP3492105B2 (ja) 1996-08-30 2004-02-03 株式会社東芝 ハードウェア/ソフトウェア協調シミュレーション装置及びシミュレーション方法
US5841967A (en) * 1996-10-17 1998-11-24 Quickturn Design Systems, Inc. Method and apparatus for design verification using emulation and simulation
US5946472A (en) 1996-10-31 1999-08-31 International Business Machines Corporation Apparatus and method for performing behavioral modeling in hardware emulation and simulation environments
JP3904645B2 (ja) * 1996-12-26 2007-04-11 株式会社東芝 ハードウェア/ソフトウェア協調シミュレーション装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101517576B (zh) * 2006-05-22 2011-10-05 相干逻辑公司 基于软件程序在处理系统上的运行而设计asic
CN102377655A (zh) * 2010-08-19 2012-03-14 盛科网络(苏州)有限公司 软件仿真asic转发的系统和方法

Also Published As

Publication number Publication date
CA2367972A1 (en) 2001-01-25
WO2001006421A1 (en) 2001-01-25
KR20020022061A (ko) 2002-03-23
EP1214670A4 (en) 2003-07-23
NO20020177D0 (no) 2002-01-14
NO20020177L (no) 2002-03-15
JP2003505768A (ja) 2003-02-12
HK1045577A1 (zh) 2002-11-29
AU5042800A (en) 2001-02-05
RU2002104134A (ru) 2003-08-27
US6272451B1 (en) 2001-08-07
EP1214670A1 (en) 2002-06-19
US20010049593A1 (en) 2001-12-06
KR100476785B1 (ko) 2005-03-16

Similar Documents

Publication Publication Date Title
CN1349630A (zh) 提供现场可编程系统级装置的软件工具
US8037434B2 (en) Methods and apparatus for implementing parameterizable processors and peripherals
CN1653446A (zh) 具有可配置执行单元的高性能混合处理器
Tong et al. Soft-core processors for embedded systems
Flynn et al. Computer system design: system-on-chip
CN103098026A (zh) 集成电路的系统、架构和微架构(sama)表达方式
CN111143038B (zh) Risc-v架构微处理器内核信息模型建模及生成方法
Logaras et al. SysPy: using Python for processor-centric SoC design
CN113868999A (zh) 芯片优化系统及方法
Shan et al. System-level design methodology enabling fast development of baseband MP-SoC for 4G small cell base station
Hiremath et al. Open-source Hardware: Different Approaches to Softcore implementation
Deng et al. An embedded SOPC system using automation design
CN113743042A (zh) 一种基于高层次综合工具的坐标旋转数字计算方法及系统
Patterson et al. Slotless module-based reconfiguration of embedded FPGAs
Ou et al. Energy-efficient hardware/software co-synthesis for a class of applications on reconfigurable SoCs
Kawle et al. Designing of 32-Bit Configurable Hack CPU On FPGA
Magyar Improving FPGA Simulation Capacity with Automatic Resource Multi-Threading
Aymen et al. Hardware implementation on a Xilinx Virtex4
Kranenburg Design of a portable and customizable microprocessor for rapid system prototyping
Singla et al. Network-on-chip emulation framework for multimedia SoC development
Steiner et al. Torc: Tools for Open Reconfigurable Computing
Seidel et al. Development and Implementation of a 3.6 GFLOP/s SIMD-DSP using the Synopsys Toolchain
Ou et al. Energy efficient hardware-software co-synthesis using reconfigurable hardware
Gschwind et al. FPGA Rapid Prototyping of Application-Specific Processors
Mehta Integration of SHA2 FPGA implementation with RISC-V core

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1045577

Country of ref document: HK