CN101405716A - 具有可配置逻辑设备的微控制器产品的快速创建和配置 - Google Patents
具有可配置逻辑设备的微控制器产品的快速创建和配置 Download PDFInfo
- Publication number
- CN101405716A CN101405716A CNA2007800101354A CN200780010135A CN101405716A CN 101405716 A CN101405716 A CN 101405716A CN A2007800101354 A CNA2007800101354 A CN A2007800101354A CN 200780010135 A CN200780010135 A CN 200780010135A CN 101405716 A CN101405716 A CN 101405716A
- Authority
- CN
- China
- Prior art keywords
- microcontroller
- group
- instruction
- configurable logic
- logic devices
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7839—Architectures of general purpose stored program computers comprising a single central processing unit with memory
- G06F15/7842—Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
Abstract
描述了适合于微控制器产品的快速创建和配置的方法和装置以及可配置逻辑设备,所述微控制器产品包括微控制器或相似的计算资源。本发明的各种实施例允许对新的基于微控制器的产品以及快速和划算样式的产品族的开发,从而使得这而产品能够较早地进入市场。将现有的微控制器块和现有的可配置逻辑设备相结合以形成独特的产品,其中微控制器块操作用于配置所述可配置逻辑设备,以便形成基于微控制器的产品的所希望的独特硬件特征。当对产品进行复位时以及/或者当识别加电状况时,微控制器块配置所述可配置逻辑设备。
Description
技术领域
本发明大体涉及用于微控制器或基于微控制器的产品的快速和划算的开发的方法和装置,所述基于微控制器的产品包括耦合到可配置逻辑设备的微控制器内核。
背景技术
半导体制造技术的发展带来了将百万计的诸如晶体管之类的电路元件包括在单个集成电路上的能力。在给定这种能力时,多个制造商开发了用于诸如微控制器和微处理器之类的可编程产品的复杂设计。这些可编程设备允许开发多种用户产品,然而许多产品仍然需要在例如它们对外部世界的物理接口上的差异。因此,需要附加设计、开发和检验工作以便生产出这些产品,尽管它们的内部硬件资源大多数保持相同。
在竞争激烈的市场中,快速开发并推出产品的能力已变为这些产品经济上的成功的重要因素。
发明内容
所需要的是用于提供产品的快速创建和配置的方法和装置,所述产品至少包括诸如微控制器之类的计算资源。
简要地,描述了适合于微控制器产品的快速创建和配置的方法和装置以及可配置逻辑设备,所述微控制器产品包括微控制器或相似的计算资源。本发明的各种实施例允许以快速和划算的方式对新的基于微控制器的产品以及产品族的开发,从而使得这些产品能够较早地进入市场。
在本发明的另一方面,将现有微控制器块和现有可配置逻辑设备相结合以便形成独特的产品,其中微控制器块操作用于配置所述可配置逻辑设备,以便形成基于微控制器的产品的所需的独特硬件特征。
在本发明的另一方面,当对产品进行复位时以及/或者当识别加电状况时,微控制器块配置所述可配置逻辑设备。
附图说明
图1是根据本发明的所示出的基于微控制器的产品的框图。
图2是示出了微控制器的操作以便确定是否配置所述可配置逻辑设备、配置所述可配置逻辑设备并且执行用户指定应用程序的框图。
具体实施方式
通常,本发明涉及以下方法和装置,即用于将用于计算资源的现有设计与用于可配置逻辑块的现有设计相结合,并且使计算资源执行软件以便配置所述可配置逻辑块且然后执行应用程序。
此处对“一个实施例”、“实施例”或相似表示法的参考意指关于实施例描述的特定的特性、结构、操作或特征被包括在本发明的至少一个实施例中。因此,此处出现的这些词组或表示法不必都指示相同的实施例。此外,在一个或更多个实施例中可以以任何合适的方式将各种特定的特性、结构、操作或特征相结合。
术语微型计算机、微控制器、嵌入式控制器、嵌入式处理器和相似的变体在该领域内有时被可互换地使用,并且通常意指包括适合于集成进更大的集成电路的数字数据处理电路块或诸如由众所周知的8051微控制器族示范的设备之类的完整设备。注意,本发明不局限于任何特定的指令组结构或电路级实现。
计算机、不论大的或小的系统或者微处理器或微控制器在该领域内通常称作机器。例如,“机器的状态”通常指示由其中基本上所有存储位的状态所显示的计算机逻辑状态。另外,完整计算机系统和CPU有时宽泛地称作程控数据处理器。数据程控数据处理器此处被用于包括所有方式的诸如微处理器、微型计算机以及任何功能等价设备或系统之类的计算或数据处理元件。
术语集成电路IC、芯片、冲模、半导体设备、单片集成电路、微电子设备或者类似变体可以在这里被可互换地使用,并且微电子设备被视为最宽泛的术语,包括其他术语在内。关于这些微电子设备,信号通过物理的导电的连接耦合在所述微电子设备与其他电路元件之间,所述其他电路元件包括但不局限于其他微电子设备。连接点有时称作输入、输出、输入/输出(I/O)、端子、线路、管脚、衬垫、端口、接口或相似的变体和组合。如果在使用的上下文中没有明确注意,则这些被认为是对于本公开而言等价的术语。由于在该领域中大体能够理解上述所有术语,所以本发明适用于上述所有术语。
如上所注意到的,微控制器是几乎每个市场分段中的用户所使用的通用的系统构件块。这是目前估计有数十亿美元注入的大型的正处于发展阶段的市场。然而,需要意识到,包括但不局限于微控制器集成电路和基于微控制器的产品的微控制器生意是非常有竞争力的生意,而且用户通常基于需要根据他们的规范设计并推出产品的成本和/或时间量来作出决定。
每个用户在他们特定的微控制器或基于微控制器的产品的功能和电学规范方面的需要是不同的。本领域的以及从本公开获利的技术人员将会意识到,对于各种不同用户的需要(实际上几千个)来开发微控制器或基于微控制器的产品是耗时的且通常惊人地昂贵。此外,因为规模经济可能很难获得,所以对于特定的微控制器或基于微控制器的产品而言,存在低销售量的相对高的风险,导致特定设计的投资上的较小或负的回报。本发明的各种实施例提供了快速创建新产品并仅优化高销售量卖主的低成本方式。
微控制器或基于微控制器的产品的设计者和/或制造商的用户共同在商业环境中操作,在所述商业环境中有明显的压力使他们迅速进入市场。由于前述情况,微控制器或基于微控制器的产品的设计者和/或制造商迅速响应用户的需要和他们的时间约束以便赢得他们的生意,这是很重要的。
关于用户的需要,即他们的功能和电学规范,要注意,他们的用户规范之间的大多数差异通常都是基于改变外围功能需求,而不是改变CPU结构或存储器尺寸(可以相对容易地供应对存储器范围的需要)。
为了提供快速且划算的设计以及根据用户的规范的制造,本发明的各种实施例提供了一种微处理器,所述微处理器以结构上集成的方式耦合到可配置电路,以便两者看上去像微控制器的整体部件而且微控制器利用该可配置电路来执行必要的配置、连接和通信功能。该可配置电路可以是可配置逻辑设备(CLD)形式的。根据本发明,CLD或相似的功能块的集成操作细节为用户节省了复杂度并降低了投资者的支持成本。
如上所示,本发明的各种实施例提供了一个或更多个可获得的或先前存在的微控制器与一个或更多个可获得的或先前存在的可配置逻辑设备的组合。在这些组合中,所述可配置逻辑设备通常由制造商在功能上配置以便满足用户的需要(及规范);而且所述可配置逻辑设备物理且逻辑地无缝连接到微控制器,以便以集成电路呈现。应当了解,虽然微控制器和可配置逻辑设备可以集成在单个冲模上,但它们每个可以处于分开的冲模上。相似地,微控制器冲模和可配置逻辑设备冲模可以包装在单个封装中,或者它们可以包装在分开的封装中,所述分开的封装具有在这些封装之间提供的外部互连。
在本发明的一个所示出的实施例中,在可配置逻辑设备加电时以及复位时执行至少一个配置操作,以便可配置逻辑设备执行所希望的功能。在这个所示出的实施例中,通过驻留在微控制器上的配置软件来实现至少一个配置操作。该配置软件通常包括配置值以及配置程序。本领域的以及从本公开获利的技术人员应了解,虽然这个所示出的实施例具有驻留在微控制器上的配置软件,但只要微控制器能够执行所述配置软件,在微控制器外部的存储器中具有配置软件就是在本发明范围之内的。
所示出的实施例提供了微控制器与可配置逻辑设备之间的物理和逻辑连接,以允许两者之间的控制及数据信息流,而且该实施例通常包括关于在其间通过的控制和数据信号的安全措施。
在本发明的另一方面,所示出的实施例使微控制器管理可配置逻辑设备的加电和复位功能,以便在产品的不同操作及功率管理状态之间进行转换并控制产品的不同操作及功率管理状态。
参考图1,显示并描述了根据本发明所示出的基于微控制器的产品100。微控制器块102耦合到总线104。依次地,总线104耦合到总线桥106。总线桥106耦合到多个管脚选择块108-0至108-n。可配置逻辑设备112耦合到管脚选择块108-0至108-n以及时钟及控制信号生成块110。注意,微控制器块112是先前已设计并检验的计算资源。微控制器102不局限于特定的指令组结构、数据通路宽度、寄存器数量等。
可以利用单个芯片上的所有其他所显示的组件来实现微控制器102,然而,这不是本发明的要求。更特别地,由管脚选择块108-0至108-n表示的用户指定接口提供了基于微控制器的产品100的独特硬件特征,而不必从头开始设计微控制器或可配置逻辑设备。如此,在产生独特硬件接口的同时,通过使用用于微控制器和可配置逻辑设备的先前存在的电路块来节省大量的时间和精力。
总线桥106可以是用于将由微控制器102的指令执行的结果传送到管脚选择块108-0至108-n的任何合适的电路。
本领域的以及从本公开获利的技术人员应了解管脚选择块108-0至108-n表示所示出的实施例的用户指定接口,并应进一步了解该接口的特征可以由微控制器102通过执行相应的不同配置指令组来定制以适应于任何特定用户规范。
在操作中,微控制器102执行使得微控制器102生成信号的所存储的指令,所述信号配置可配置逻辑设备112以便执行会产生独特用户接口的所希望的电路功能。在此上下文中,由微控制器对指令的执行有时可以由诸如运行或执行代码、或固件或软件之类的相似表达来指示。
在执行配置代码之后,微控制器102执行用户指定应用程序。
参考图2,显示了处理200,其中在步骤202处,作出复位或加电状况是否已出现的确定。如果复位或加电状况已出现,则在步骤204处提取并执行配置代码。在配置操作完成时,微控制器102提取并执行用户指定应用程序206。
本发明的各种实施例在多种产品中得到应用。可以根据本发明快速实现的产品的示例包括但不局限于具有以下的一个或更多个的MCU:CAN接口,工业9比特UART和USART、加密单元高速串行接口(例如SERDES、PCI快递、以太网)、消费者串行接口(例如I2C、I2S、USB、PCM、SPI)、音频和视频编解码器、定制信号处理块、用户指定逻辑、存储器接口(例如NAND闪存、DDR、SDRAM)、存储器卡接口(例如SD、CF、记忆棒)、智能卡、无线媒体接入控制器、CPU总线扩充、可重新配置协处理器以及显示控制器(例如LCD控制器)。
本发明的各种实施例包括用于提供基于微控制器的产品的快速创建和配置的方法和装置。微控制器或相似的计算资源耦合到可配置逻辑并且尤其还负责配置可配置逻辑设备。对用户透明的配置操作允许产品如同具有定制设计接口的微控制器。
本发明的实施例提供了多个优点。例如,随着产品创建周期基本减小到可配置逻辑设备配置和产品检验时间,用户的需要可以迅速得到满足。
另一个优点是:由于使用了已验证的组件(即先前存在的微控制器和可配置逻辑设备设计),所以产品创建风险大大降低。
另一个优点是:可以应用基于知识的产品优化策略。例如,高销售量销售派生物可优化为精确的单芯片设计;而且如果销售量低,则不必顾及芯片开发成本。
另一个优点是:许多不同的可配置逻辑设备组件在市场上可获得,而且根据用户需要来可以选择最优的组件。换句话说,PLD、FPGA、CPLD、FPSC、pSOC都是适合于本发明实施例的可配置逻辑设备的示例。所有这些设备都具有逻辑结构,所述逻辑结构具有用户可编程功能。
另一个优点是:系统成本节约在将可配置逻辑设备配置模式和软件集成在微处理器上时自然产生。这可能还需要外部存储器芯片以及外部配置设备或通信链路。在本发明的一些实施例中,对存储在微控制器中的配置模式进行压缩以便进一步降低存储器需求。
另一个优点是:程序错误的修复和增强可以通过由微控制器执行的配置软件并入到可配置逻辑设备;这可以在该领域和/或系统中完成。
应当理解,本发明不局限于上述实施例,但包括在所附权利要求及它们的对等物的范围内的任何及所有实施例。
Claims (14)
1.一种基于微控制器的产品,包括:
微控制器;
在耦合到微控制器的第一存储区域中存储的第一组指令;
在耦合到微控制器的第二存储区域中存储的第二组指令;
耦合到微控制器的第一组端子;
耦合到第一组端子且进一步耦合到微控制器的第一可配置逻辑块;
其中微控制器操作用于执行第一组指令以便配置第一可配置逻辑块,并进一步操作用于执行所述指令组。
2.根据权利要求1所述的基于微控制器的产品,其中所述端子包括管脚选择逻辑。
3.根据权利要求2所述的基于微控制器的产品,其中所述微控制器通过总线桥耦合到第一组端子,所述总线桥适于将由执行第一组指令得到的信号传送到管脚选择逻辑。
4.根据权利要求1所述的基于微控制器的产品,其中所述第二组指令包括用户指定应用程序。
5.根据权利要求1所述的基于微控制器的产品,其中所述微控制器适于确定是否已出现复位。
6.根据权利要求5所述的基于微控制器的产品,其中如果已出现复位,则所述微控制器操作用于执行第一组指令。
7.根据权利要求1所述的基于微控制器的产品,其中所述微控制器适于确定是否已出现加电状况。
8.根据权利要求5所述的基于微控制器的产品,其中如果已出现加电状况,则所述微控制器操作用于执行第一组指令。
9.一种操作基于微控制器的产品的方法,包括:
确定是否已出现复位;
如果已出现复位,则执行第一组指令;
确定是否已出现加电状况;
如果已出现加电状况,则执行第一组指令;
在执行第一组指令之后执行第二组指令;
其中执行第一组指令使得可配置逻辑设备被配置,以及执行第二组指令使得用户指定应用程序被运行。
10.根据权利要求9所述的方法,其中根据第一组指令配置所述可配置逻辑设备提供了基于微控制器的产品的第一组硬件特征。
11.根据权利要求10所述的方法,其中以第三组指令替换第一组指令。
12.根据权利要求11所述的方法,其中执行第三组指令使得可配置逻辑设备被配置以便提供基于微控制器的产品的第二组硬件特征。
13.根据权利要求12所述的方法,其中所述基于微控制器的产品包括第一个封装中的微控制器和第二个封装中的可配置逻辑设备。
14.根据权利要求12所述的方法,其中所述基于微控制器的产品包括第一个封装中的微控制器和第一个封装中的可配置逻辑设备。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US78568106P | 2006-03-24 | 2006-03-24 | |
US60/785,681 | 2006-03-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101405716A true CN101405716A (zh) | 2009-04-08 |
Family
ID=38328372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007800101354A Pending CN101405716A (zh) | 2006-03-24 | 2007-03-21 | 具有可配置逻辑设备的微控制器产品的快速创建和配置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20090106532A1 (zh) |
EP (1) | EP2005316A2 (zh) |
JP (1) | JP2009530733A (zh) |
CN (1) | CN101405716A (zh) |
WO (1) | WO2007110818A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102074205B (zh) * | 2009-11-19 | 2012-10-17 | 航天信息股份有限公司 | Lcd控制器的控制方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9785595B2 (en) | 2013-09-09 | 2017-10-10 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Multi-channel universal serial bus (USB) to subrate channel systems |
CN104021064A (zh) * | 2014-05-23 | 2014-09-03 | 无锡市崇安区科技创业服务中心 | 一种串口通讯数据监测方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2301747A (en) * | 1995-06-02 | 1996-12-11 | Dsc Communications | Remotely programmable subscriber terminal in a wireless telecommunications system |
US6467009B1 (en) * | 1998-10-14 | 2002-10-15 | Triscend Corporation | Configurable processor system unit |
US6188241B1 (en) * | 1999-05-14 | 2001-02-13 | Advanced Micro Devices, Inc. | Microcontroller having a block of logic configurable to perform a selected logic function and to produce output signals coupled to corresponding I/O pads according to a predefined hardware interface |
US6851047B1 (en) * | 1999-10-15 | 2005-02-01 | Xilinx, Inc. | Configuration in a configurable system on a chip |
US6803785B1 (en) * | 2000-06-12 | 2004-10-12 | Altera Corporation | I/O circuitry shared between processor and programmable logic portions of an integrated circuit |
US6877063B1 (en) * | 2000-12-22 | 2005-04-05 | Xilinx, Inc. | Multiple memory aliasing for a configurable system-on-chip |
WO2003034199A2 (en) * | 2001-10-16 | 2003-04-24 | Leopard Logic, Inc. | Interface architecture for embedded field programmable gate array cores |
JP3904493B2 (ja) * | 2002-07-24 | 2007-04-11 | 株式会社ルネサステクノロジ | 半導体装置 |
US20050102573A1 (en) * | 2003-11-03 | 2005-05-12 | Macronix International Co., Ltd. | In-circuit configuration architecture for embedded configurable logic array |
-
2007
- 2007-03-21 WO PCT/IB2007/050999 patent/WO2007110818A2/en active Application Filing
- 2007-03-21 EP EP07735215A patent/EP2005316A2/en not_active Withdrawn
- 2007-03-21 JP JP2009501012A patent/JP2009530733A/ja not_active Withdrawn
- 2007-03-21 US US12/294,223 patent/US20090106532A1/en not_active Abandoned
- 2007-03-21 CN CNA2007800101354A patent/CN101405716A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102074205B (zh) * | 2009-11-19 | 2012-10-17 | 航天信息股份有限公司 | Lcd控制器的控制方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2009530733A (ja) | 2009-08-27 |
US20090106532A1 (en) | 2009-04-23 |
EP2005316A2 (en) | 2008-12-24 |
WO2007110818A3 (en) | 2007-12-06 |
WO2007110818A2 (en) | 2007-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8412918B1 (en) | Booting mechanism for FPGA-based embedded system | |
US9652252B1 (en) | System and method for power based selection of boot images | |
US6744274B1 (en) | Programmable logic core adapter | |
US6732263B1 (en) | Configuring both a programmable logic device and its embedded logic with a single serialized configuration bit stream | |
CN103399840A (zh) | 一种计算机配置文件的带外修改方法及计算机 | |
US9183339B1 (en) | System and method for preparing partially reconfigurable circuit designs | |
CN104007954A (zh) | 处理器和用于处理器的控制方法 | |
US9449131B2 (en) | Extracting system architecture in high level synthesis | |
CN104570830A (zh) | 向集成电路提供配置数据的装置及方法 | |
CN101405716A (zh) | 具有可配置逻辑设备的微控制器产品的快速创建和配置 | |
CN101681274B (zh) | 接口处理器 | |
US7308631B2 (en) | Wrapper serial scan chain functional segmentation | |
CN102799479A (zh) | 具有多功能bios的主板及其测试方法 | |
US7908533B2 (en) | Processor to JTAG test access port interface | |
US8285527B2 (en) | Method and system for equivalence checking | |
US7865698B1 (en) | Decode mode for an auxiliary processor unit controller in which an opcode is partially masked such that a configuration register defines a plurality of user defined instructions | |
TWI556158B (zh) | 組態資料的處理裝置及方法 | |
US7085978B2 (en) | Validating test signal connections within an integrated circuit | |
US20210042462A1 (en) | Peripheral tool | |
CN110442986B (zh) | 一种基于cpld逻辑代码生成器管理服务器主板的方法 | |
US9696998B2 (en) | Programmable substitutions for microcode | |
US20040194044A1 (en) | Device for creating timing constraints | |
CN105868042A (zh) | 一种看门狗电路 | |
CN105549953A (zh) | 用以改善在处理器中重新执行加载的装置与方法 | |
US8042075B2 (en) | Method, system and application for sequential cofactor-based analysis of netlists |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090408 |