CN114096955A - 可重新配置的片上系统 - Google Patents
可重新配置的片上系统 Download PDFInfo
- Publication number
- CN114096955A CN114096955A CN202080044400.6A CN202080044400A CN114096955A CN 114096955 A CN114096955 A CN 114096955A CN 202080044400 A CN202080044400 A CN 202080044400A CN 114096955 A CN114096955 A CN 114096955A
- Authority
- CN
- China
- Prior art keywords
- circuit
- sub
- soc
- energy
- blocks
- 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
- 230000002093 peripheral effect Effects 0.000 claims abstract description 19
- 230000006870 function Effects 0.000 claims description 106
- 238000012360 testing method Methods 0.000 claims description 72
- 238000005259 measurement Methods 0.000 claims description 22
- 230000002950 deficient Effects 0.000 claims description 10
- 238000000034 method Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 8
- 230000003750 conditioning effect Effects 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 6
- 230000000694 effects Effects 0.000 claims description 5
- 238000010801 machine learning Methods 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000008672 reprogramming Effects 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 3
- 101100257262 Caenorhabditis elegans soc-1 gene Proteins 0.000 description 38
- 238000013461 design Methods 0.000 description 24
- 238000007726 management method Methods 0.000 description 16
- 230000007547 defect Effects 0.000 description 11
- 230000008901 benefit Effects 0.000 description 10
- 239000000243 solution Substances 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 7
- 239000000758 substrate Substances 0.000 description 7
- 239000004065 semiconductor Substances 0.000 description 6
- 230000007613 environmental effect Effects 0.000 description 5
- 230000002411 adverse Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000004378 air conditioning Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000011065 in-situ storage Methods 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 101100444142 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) dut-1 gene Proteins 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000035882 stress Effects 0.000 description 1
- 239000012085 test solution Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
- G06F15/7885—Runtime interface, e.g. data exchange, runtime control
- G06F15/7889—Reconfigurable logic implemented as a co-processor
-
- 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/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7817—Specially adapted for signal processing, e.g. Harvard architectures
-
- 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/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- 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/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
-
- 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/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
- G06F15/7871—Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
- G06F15/7875—Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS for multiple contexts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
本发明涉及一种片上系统SOC,包括:第一子电路,其具有所定义的接口和所定义的固定硬件功能;第二可重新配置子电路,其经由所述接口而信号连接到第一子电路以与其交换信号;以及(iii)一个或多个端子,用于将所述SOC电连接到其外围设备。第二子电路被配置为一个或多个端子与第一子电路之间的接口电路。第一子电路被划分成多个个体第一电路块,并且第二子电路被划分成多个个体第二电路块。此外,所述第一电路块中的至少一个经由一个或多个信号连接而信号连接到一个或多个其他第一电路块或一个或多个端子,每个信号连接通过第二电路块中的一个或多个而延伸。所述信号连接中的一个或多个可借助于属于相应信号连接的相应一个或多个第二电路块来重新配置,优选地,动态地和/或可逆地重新配置,使得所述SOC在其操作之前或期间可通过重新配置所述第二电路块中的至少一个的方式来重新配置。
Description
本发明涉及集成电路(IC)领域,并且具体地涉及可重新配置的片上系统(SOC)。特别地,在没有限制的情况下,本发明适用于在汽车应用领域中使用。
在许多现代应用中,特别地包括在汽车应用中,SOC在实现这种应用方面起着举足轻重的作用。例如,现代车辆引擎(例如,汽车引擎)、空调、安全系统、制动系统和许多其他车辆子系统依赖于并入了一个或多个SOC(诸如例如,微控制器)的控制单元并且由这些控制单元所控制。
许多SOC在功能上具有固定的硬件,该硬件由相应IC设计所定义,并且然后在这种IC的生产过程期间被固定(硬连线)。这也适用于具有集成软件可编程核的许多SOC,例如CPU或微控制器单元(MCU),其中该SOC的可重新配置性基于固定硬件实现方式是严格地软件的。
另一方面,可重新配置的硬件电路是已知的,诸如所谓的现场可编程门阵列(FPGA),该现场可编程门阵列允许基于FPGA的相应编程对电路进行动态硬件级重新配置,即“重新布线”。然而,相比于具有固定硬件实现方式的IC,FPGA也具有显著的缺点,特别地包括相同功能的较低可实现性能和较大占用空间(footprint)、以及因此较高的成本。
通常,在集成电路(特别是SOC)的生产过程结束时,会对所生产的IC进行全面测试,以验证该IC是否符合其规范。这种测试通常包括验证IC的正确电气性能以及还有其环境和机械性能。然而,在一些应用领域,包括汽车应用领域,这种IC需要承受变化的并且有时是苛刻的环境条件,这可能对这种IC的可靠性产生影响。
当前可用的测试和资质认证(qualification)过程(特别地包括在典型生产过程结束时的上述测试)通常不能够足够快地适应于这种高要求应用的不断变化的应用特定要求,特别地包括汽车环境的那些要求。尽管一些当前可用的片上测试解决方案提供了各种不同的测试功能,但是一旦针对这种芯片的制造过程完成,这些测试功能就既不能够被扩展也不能够被修改(尤其是校正)。特别地,当IC正在使用中并且受到改变的环境条件和相关操作负载和挑战的影响时,这种已知解决方案无法提供鉴于操作或环境事件的发生来适配或修改测试功能的可能性。
因此,包括一个或多个这种IC的系统的制造商面临如下场景:其中要么需要通过附加的测量——如增加(进一步的)冗余(这可能导致过度设计)——来减轻或者接受从仍然存在的测试和资质认证差距中产生的风险,要么其中使用这种IC是不可行的,例如在安全相关应用的情况下。后一种情况通常适用于汽车应用,这可能对将被引入到基于使用这种IC的车辆的特征的可用性或性能产生负面影响。
因此,考虑到集成电路在其整个寿命期间的功能、可靠性和/或可测试性,本发明的目的是进一步改进集成电路、特别是具有高性能要求的IC的可重新配置性。
权利要求1的教导提供了对该问题的解决方案。从属权利要求的教导提供了本发明的各种优选实施例。
本发明的一方面涉及一种片上系统SOC,包括:(i)第一子电路,其具有所定义的接口和所定义的固定硬件功能;(ii)第二可重新配置子电路,其经由所述接口而信号连接到第一子电路以与其交换信号;以及(iii)一个或多个端子,用于将SOC电连接到其外围设备。第二子电路被配置为一个或多个端子与第一子电路之间的接口电路。第一子电路被划分成多个个体第一电路块,并且第二子电路被划分成多个个体第二电路块。此外,所述第一电路块中的至少一个经由一个或多个信号连接而信号连接到一个或多个其他第一电路块或一个或多个端子,每个信号连接通过第二电路块中的一个或多个而延伸。所述信号连接中的一个或多个可借助于属于相应信号连接的相应一个或多个第二电路块来重新配置,优选地,动态地和/或可逆地重新配置,使得SOC在其操作之前或期间可通过重新配置所述第二电路块中的至少一个的方式来重新配置。
本文中使用的术语“子电路”指代SOC的多元件(例如,多个互连的晶体管或其他电子元件)电路部分,该电路部分以集成的形式存在,即集成在SOC中。具体地,在没有限制的情况下,子电路可以由一个或多个半导体IP核组成或包括一个或多个半导体IP核,即逻辑或功能的可重复使用单元、或被设计为要集成在各种不同集成电路中的构建块的单元或布局设计。例如,这种半导体IP核可以是微处理器或整个微控制器系统、外围控制器或其他通信相关功能或接口、编码器/解码器、存储器单元、信号滤波器或混合信号块(诸如,A/D转换器或D/A转换器)的实现方式。IP核甚至可能来自不同的供应商,并且特别地可能作为软核或硬核被出售或以其他方式分发。
本文中使用的术语“固定硬件功能”指代集成电路或其子电路的硬件功能,该硬件功能以如下这种方式在硬件中实现:即,它不能够通过IC的正常操作而被修改,即“重新布线”。例如并且在没有限制的情况下,微处理器或微控制器器件的电路(即,硬件)通常具有固定硬件功能(即,CPU、寄存器、高速缓存等),尽管当然微处理器或微控制器器件的总体功能(也包括以软件的固件实现的功能)可以通过替换或修改在其上执行的固件或软件来更改。相反地,可以被操作地重新构造(例如,“重新布线”)从而改变其功能的硬件的硬件功能(例如,现场可编程门阵列(FPGA)或其他硬件可重新配置逻辑块的硬件功能)不被认为是“固定硬件功能”。因此,本文中使用的术语“可重新配置的”严格地指代硬件级别上的电路(诸如,在FPGA的情况下)的这种可重新配置性,而仅在软件级别上提供的灵活性不应被视为“可重新配置的”。
根据本发明的第一方面的SOC相比于常规SOC设计可以提供许多优点。特别地,它将固定硬件设计块(特别是第一子电路中的固定硬件设计块)的优点与单个IC内的第二子电路中的可重新编程电路部分所提供的灵活性进行组合。虽然因此这两个子电路被组合在相同SOC内从而可以作为单个器件来处理、分发和操作是一优点,但是第二子电路仍然可以均被设计为能够与各种不同的DUT结合地重复使用的可重新配置电路块。
因此,本解决方案允许使用预定固定硬件电路和灵活(即,可重新编程)电路两者的优点。虽然固定硬件电路通常可以以非常高的集成级别并且因此以高性能和空间效率(小形状因子和低成本)来实现,但是可以在第二子电路中具体地提供的灵活性形成了总体SOC的许多不同先进功能的基础,如将在下面关于各种实施例详细描述的那样。
SOC的总体结构在一个方面提供了各种个体固定硬件电路块之间的可重新配置互连结构,使得它们相应的功能和特征可以取决于SOC的当前的应用特定要求和操作要求以多种不同的方式被动态地组合,并且在另一方面提供了这些第一电路块与SOC的端子以及因此与SOC的外围设备之间的可重新配置互连结构。
尽管第一子电路的设计布局被划分成多个个体第一电路块,每个第一电路块实现第一子电路的一个或多个特定功能,但是维持了可以特别地对应于一个或多个可重复使用的半导体IP核的第一子电路的总体功能。
该解决方案的另外的优点是:SOC的端子的配置(即,其引出线(pinout))可以在SOC的多个版本或甚至多个代上保持不变,尽管这些不同的版本或不同的代包含至少第一子电路的不同版本,其接口甚至可以分别从一个版本或一个代到另一个版本或另一个代地改变。
在下文中,描述了SOC的优选实施例,这些实施例可以任意地彼此组合,除非这种组合被明确排除,例如当某些实施例仅被描述为对彼此的替代方案或者在技术上不可能时。
根据一些实施例,第一子电路的固定硬件功能是汽车特定功能。例如并且在没有限制的情况下,这种功能可以涉及引擎控制、制动控制、控制一个或多个安全系统或特征、空调、信息娱乐系统、照明系统、头部单元、通信系统、主体控制系统、安全性特征(例如,在所选系统的长期可升级性的情景下)或车辆的人机界面。
根据一些实施例,SOC被适配成:通过根据基于机器学习的重新配置过程来重新配置所述至少一个第二电路块从而在其操作期间动态地重新配置其本身。具体地,在一些相关实施例中,SOC被适配成:应用所述基于机器学习的重新配置过程,以用于根据定义了SOC的当前或即将到来的操作场景的一个或多个输入参数的值,来针对该操作场景动态地确定所述第二电路块中的两个或更多个的多个可能配置的集合当中的相应优化配置。因此,以这种方式,由第二电路块的集合提供的SOC的互连结构可以自动地适配于特定操作场景,并且因此适配于SOC需要满足的要求。这些操作场景可能特别地涉及应用特定要求或SOC本身的操作要求,例如热管理、自我测试等。
因此,输入参数可以对应于表征这些相应要求的技术参数。例如,在操作要求的情况下,输入参数可以反映自我测试的测量结果,例如跨SOC的温度分布、或SOC内的特定位置处的电流或电压水平。在应用特定要求的情况下,输入参数可以例如反映分配给第一子电路或者整个SOC的功能中的不同功能的一组不同的当前优先级,使得SOC可以配置互连结构,使得具有低优先级的电路块被断开或转变成低功率模式,而具有较高优先级的电路块保持连接。特别地,这可以以如下方式来执行:即,需要协作以便执行某个特定应用的第一电路块通过一个或多个中间第二电路块而变得互连或保持互连。使用一个或多个基于机器学习的重新配置过程使得能够实现如下解决方案:该解决方案能够自适应于宽范围的操作场景,包括在SOC的设计时尚未预见到的操作场景、或随时间(例如,基于SOC本身或其外围设备的老化过程)改变的操作场景。
根据一些实施例,第二电路块的第一子集被实现为相应的固定硬件电路块,并且第二电路块的不相交的第二子集被实现为相应的可重新配置电路块,例如FPGA块。以这种方式,第二子电路本身的功能基于混合的硬连线(即,固定硬件)电路块和可重新配置电路块的概念。例如,第二子电路的不同预定义功能的库可以由硬连线第二电路块的集合来实现,每个硬连线第二电路块实现一个或多个库元素,而可重新配置的第二电路块在第二子电路本身内提供互连结构,该互连结构允许将第二电路块在彼此之间灵活地互连,并且特别地允许取决于应用于第二子电路的当前操作场景来开启或关断(switch on or off)个体库元素。
根据一些实施例,第二子电路进一步被配置为集成测试单元,所述集成测试单元用于通过如下方式来测试第一子电路的所述固定硬件功能:向第一电路施加一个或多个输入信号,并且评估响应于所述一个或多个输入信号经由所述接口从第一子电路接收到的一个或多个输出信号对一个或多个预定测试标准的符合。
本文中使用的术语“集成测试单元”指代SOC的多元件电路部分,该电路部分以集成的形式存在,并且具有用于测试第一子电路或其至少一个或多个部分的测试功能。
因此,根据这些实施例的SOC本身已经包括用于测试第一子电路的测试功能,在SOC的整个寿命期间,该测试可以在其操作期间执行。因此,第一子电路可以被称为“被测器件”(DUT),该DUT与第二子电路互连,第二子电路进而具有经由其接口来测试该DUT的测试功能。事实上,这种测试功能甚至可以在SOC的寿命期间基于其可重新配置性被动态地更改。如下面将详细描述的那样,第二子电路关于第一子电路的功能甚至可以包括各种另外的方面。特别地,第二子电路的功能可以在SOC的寿命内变化,从而适应于该寿命期间的特定发展,并且确保在许多情况下可以延长第一子电路对其规范的确定寿命的符合。
具体地,根据一些实施例,第二电路块的第一子集中的两个或更多个电路块均实现相应的特定测试仪器,以用于测试第一子电路的所述固定硬件功能的相关方面。此外,第二电路块的第二子集中的两个或更多个电路块是可重新配置的,从而选择性地将这些测试仪器连接到第一子电路,以便选择性地使得能够通过相应的一个或多个所连接的测试仪器来进行其测试。这允许用于测试第一子电路的高度灵活、可重新配置的测试设置,其中可以取决于当前测试需要来动态地重新配置该测试设置,当前测试需要进而可以具体地取决于SOC的当前或即将到来的操作场景。
此外,在一些相关实施例中,第一子电路与第二子电路之间的信号连接中的至少一个包括一个或多个专用测量线,所述一个或多个专用测量线被专门配置成用于在第一子电路内的相应预定测量点处测试、测量或监测第一子电路或其功能,而不控制或以其他方式影响所述功能。
根据一些实施例,SOC被配置成使得SOC的第一子电路与一个或多个端子之间的任何信号(即,在正向或反向方向上或其两者)传递通过第二子电路,这因此形成了一个或多个端子与第一子电路之间的唯一接口电路。以这种方式,要关于第一子电路执行的第二子电路的功能不受第一子电路与对于第二子电路未知的另一实体的任何(基于线的)交互所影响,并且因此第二子电路可以承担针对第一子电路与SOC的外围设备之间的任何信号连接的把关者(gatekeeper)的角色。如下面将更详细地描述的那样,考虑到确保第一子电路的操作的完整性和安全性,这可能是特别有利的。
根据一些实施例,第一电路块的至少子集均实现第一子电路的特征集合中的相应特定可选择的预定义功能特征。此外,第二电路块中的一个或多个是可重新配置的,从而选择性地将第一电路块的所述子集中的第一电路块连接到其他第二电路块或一个或多个端子,以便选择性地使得SOC能够执行这些第一电路块中的相应连接的第一电路块的相应一个或多个功能特征。以这种方式,可以根据需要借助于第二电路块来重新配置由第一子电路提供的功能。类似地,可以同时断开其他第一电路块。
根据一些实施例,第二子电路进一步被配置成:关于第一子电路来执行以下功能中的一个或多个:测量或监测第一子电路的一个或多个信号或电气性质;和/或控制或反馈控制第一子电路。这种测量和监测不仅可以用于确定第一子电路的当前状态或操作,而且还测量和监测第一子电路与第二子电路本身或SOC的外围设备的交互。控制或反馈控制第一子电路可以特别地服务于如下目的:使第二子电路充当第一子电路的主设备(master),第一子电路充当对应的从设备(slave);或者使第二子电路充当接口电路的主设备,所述接口电路将经由端子从SOC的外围设备接收到的输入变换成符合第一子电路接口和能力的对应控制信号,从而基于这些输入来相应地控制第一子电路。
根据一些实施例,根据以下变型(i)至(iii),第二子电路进一步被配置成:(i)通过在第二子电路中而不是在第一子电路中执行第一子电路的一个或多个功能来代替第一子电路的一个或多个功能;(ii)通过利用存在于第二子电路中的程序数据对第一子电路的可重新编程部分进行重新编程来代替该部分的一个或多个功能;或者(iii)通过执行第一子电路的功能的一个或多个扩展来扩展第一子电路的一个或多个功能。
可以特别地应用变型(i),以用于由第二子电路中可用的另一个功能来替换第一子电路的不再需要的功能,或者用于在已经发现第一子电路的要代替的功能有缺陷或以其他方式有故障的情况下定义变通方法(workaround)解决方案。在后一种情况下,尽管缺陷或故障部分本身没有被校正,但是建立了变通方法,该变通方法可以接管缺陷/故障部分的功能,并且因此确保了整个SOC继续正常地操作(即,符合规范),并且该功能仍然可用。
在另一方面,如果第一子电路除了其固定硬件功能之外还包括一个或多个可重新编程部分,并且缺陷/故障在这些可重新编程部分中的一个或多个中具有其原因,则基于变型(ii),可以通过利用存在于第二子电路中的程序数据对这些一个或多个可重新编程部分进行重新编程来实现实际的错误(bug)修复(即,缺陷/故障部分的校正),例如作为备份解决方案或作为第二子电路本身的常规功能的一部分。
因此,根据特别地与变型(i)和(ii)有关的一些实施例,第一子电路的要被代替的功能是被SOC的错误检测功能检测为有缺陷的功能。因此,整个SOC由此可以具有自我校正能力。当SOC被用于恶劣的环境或负载条件中或被用于需要较高级别可靠性的应用(例如,安全或安全性相关应用)中时,这是特别有用的。具体地,许多汽车应用提供了如此艰难的条件和/或同时具有如此高的可靠性要求。
根据变型(iii),可以通过使用存在于第二子电路中的附加资源来扩展在第一子电路中实现的一个或多个功能。例如,第二子电路可能提供附加的存储器容量或处理容量或子功能,使得在第一子电路中实现的基本功能的性能或能力可以基于第二子电路的贡献而变成增强的功能。
根据特别地与变型(i)和(ii)有关的一些实施例,第二子电路进一步被配置成:至少部分地代替或扩展在第一子电路本身中实现的测试功能。例如,如果第一子电路包括诸如用于边界扫描的测试单元,并且这些测试单元中的一个或多个被检测为有缺陷,则根据这些实施例,可以由在第二子电路中实现的良好测试单元来替换这些有缺陷的测试单元(参见变型(i))。就在第一子电路的可重新编程部分中实现了有缺陷的测试单元而言,也可以使用变型(ii)来校正缺陷。
根据一些实施例,第二子电路进一步包括可编程电路结构,所述可编程电路结构包括以下各项中的一个或多个:(i)现场可编程门阵列FPGA和(ii)可编程处理器平台,所述可编程处理器平台被配置成基于在所述处理器平台上运行的实时操作系统、至少部分地并且特别地关于对第一子电路的所述固定硬件功能中的至少一个的所述测试来模拟(emulate)第二子电路的功能。这些实施例可以特别地用于实现可重新配置或可替换的测试仪器,所述测试仪器用于测试第一子电路或其部分。具体地,第二子电路可以包括存储器,所述存储器包含用于实现不同测试仪器的代码,并且取决于当前测试情况,可应用代码出于实现相关测试仪器的目的被加载到所述可编程电路结构中以在那里执行。以这种方式,不同测试仪器的库可以以非常紧凑的方式被维持在SOC的第二子电路或分离的存储器电路中或者甚至第一子电路本身中,这是因为相同的可编程电路结构可以用于在不同的时间处动态地实现不同的测试仪器,而必要的代码可以以非常空间高效的方式被存储在存储装置(例如,非易失性存储器(例如,嵌入式闪速存储器))中,或者甚至存储在通常高度空间高效的只读存储器(ROM)中。
根据一些实施例,第一子电路与第二子电路之间的信号连接中的至少一个是电连接,所述电连接包括一个或多个阻抗匹配器件,所述一个或多个阻抗匹配器件被配置成优化该电连接上的RF信号的正确传输。在需要在两个子电路之间交换高频信号(例如,射频(RF)信号)的情况下,将第一和第二子电路两者组合在单个SOC中的一个优点是特别重要的。由于这种信号对所有种类的寄生阻抗和电容等非常敏感,因此在较长距离上传输这种信号通常是具有挑战性的,并且需要应对措施来维持足够的信号质量。然而,如果第一和第二子电路被彼此靠近地组合在单个SOC内,则存在若干个优点。在一个方面,可以使得所述信号从子电路之一行进到另一个子电路所需的距离非常短,从而可以限制不利的影响。另一方面,可以在信号路径内提供一个或多个合适的阻抗匹配器件,所述阻抗匹配器件被配置,从而提供相应电连接(即,信号路径)上的RF信号的优化传输。以这种方式,可以进一步增强两个子电路之间的交互的可靠性,特别是在其中所述交互基于RF信号的情况下。
根据一些实施例,SOC进一步被配置成:借助于数据加密来保护要在第一子电路与第二子电路之间通过信号连接传送的数据。如果根据上面讨论的一些实施例,第一子电路与SOC的外围设备之间的所有连接都通过第二子电路而延伸,则这是特别有用的,第二子电路因此起到了把关者的作用。第二子电路与第一子电路之间的信号连接的加密因此增强了基于该把关者功能的安全性概念,这是因为它增加了拦截去往和来自第一子电路的信号路径并且从而绕过作为把关者的第二子电路的难度。
根据一些实施例,第二子电路进一步包括访问控制功能,所述访问控制功能被配置成基于预定访问控制规则来监测和控制要在SOC的外围设备与第一子电路之间交换的信号。以这种方式,可以进一步增强第二子电路的把关功能,并且可以进一步增加第一子电路的操作的安全性。具体地,根据一些相关实施例,第二子电路的访问控制功能可以被配置成:仅基于对请求实体的先前认证来选择性地准许(grant)或拒绝(dismiss)来自SOC的外围设备的请求实体的访问请求,所述访问请求针对接收对整个第一子电路或其一个或多个个体第一电路块的访问。以这种方式,还有可能针对不同类型的访问请求实现不同的安全性级别,并且特别是还针对第一子电路的不同个体第一电路块实现不同的安全性级别。
根据一些实施例,第二子电路进一步包括能量管理功能,所述能量管理功能用于管理对第一子电路或其部分的能量供应。所述能量管理功能被配置成根据以下变型(i)至(iv)响应于接收到相应能量控制信号来执行以下能量控制任务中的一个或多个:(i)选择性地开启或关断对第一子电路的一个或多个所选电路部分(例如,第一电路块)的相应能量供应;(ii)选择性地使第一子电路的一个或多个所选电路部分转变成相应的低能量操作模式;(iii)选择性地将总可用能量的供应的至少部分重新路由到第一子电路的一个或多个所选部分(例如,第一电路块),使得所述能量仅仅或主要可用于那些所选部分,同时相应地中断或减少对未选择部分的能量供应;(iv)选择性地将备用能量供应、被配置成减少能量供应的器件或电路、或能量调节电路连接到第一子电路的一个或多个所选部分(例如,第一电路块)的相应能量供应路径,以分别实现对第一子电路的一个或多个所选部分的能量供应的增加、减少或调节。
根据相关实施例,其中SOC除了第一和第二子电路之外还包括一个或多个另外的子电路,每个另外的子电路具有所定义的接口和所定义的固定硬件功能,第二子电路的所述能量管理功能可以进一步被配置成根据以下变型(v)至(viii)响应于接收到相应能量控制信号来执行以下能量控制任务中的一个或多个:(v)选择性地开启或关断对一个或多个另外的子电路的相应能量供应;(vi)选择性地使一个或多个另外的子电路中的一个或多个转变成相应的低能量操作模式;(vii)选择性地将总可用能量的供应的至少部分重新路由到第一子电路和另外的子电路中的一个或多个所选子电路,使得所述能量仅仅或主要可用于这些所选的子电路,同时相应地中断或减少对第一子电路和另外的子电路中的未选择的子电路的能量供应;(viii)选择性地将备用能量供应、被配置成减少能量供应的器件或电路、或能量调节电路连接到第一子电路或另外的子电路中的一个或多个所选子电路或其所选部分的相应能量供应路径,以分别实现对第一子电路或另外的子电路中的一个或多个所选子电路或其所选部分的能量供应的增加、减少或调节。
虽然变型(i)、(ii)、(v)和(vi)(其可以特别地在SOC的正常操作期间使用)的主要效果是在当前不需要能量消耗的地方以及当前不需要能量消耗的时候节省这种能量,但是变型(iii)、(iv)、(vii)和(viii)在如下紧急情形中是特别重要的:其中整个SOC的必要能量供应被不利地影响,并且对要维持的剩余功能的优先化(prioritization)以及尽可能长时间地确保这种功能是关键要求。例如,如果在汽车应用的情况下,SOC负责在能量供应故障(例如,如果引擎关闭并且电池供应弱或者甚至中断)的场景中控制车辆的方向盘的功能,则变型(iii)和(iv)可以用于确保尽可能长时间地维持方向盘的至少转向能力(包括例如电动转向),同时可以从能量供应中切断其他功能(诸如,用于控制娱乐、电话或空调功能的用户界面)。具体地,不是仅仅关断实现在给定场景中具有相应较低优先级的功能的SOC的部分的能量供应,而是可以重新路由这些能量供应的供应路径,使得这些能量供应现在可以向负责给定场景中需要维持的具有较高优先级的功能的SOC的那些部分供应能量。
根据相关实施例,SOC本身进一步被配置成:基于对通过一个或多个端子或在第二子电路与第一子电路之间的一个或多个电连接上的电能流(flow of electrical energy)的测量来生成能量控制信号。因此,SOC本身能够测量或监测其所连接到的SOC外部的电气路径以及SOC内的第一子电路与第二子电路之间的电气路径两者,并且基于这种测量来生成能量控制信号。特别地,取决于前述内容中的一个或多个,所述测量可以涉及测量电流、电压或阻抗或欧姆电阻或任何物理值。这些测量可以特别地形成用于对SOC所属的整个系统(例如,用于车辆的控制单元)进行改进的能量管理、以及对涉及能量管理的检测到的错误和缺陷进行改进的处理的基础。例如,如果测量产生了如下结果:所述结果指示在SOC端子中的一个或多个处、或在它们中的一些之间、或在第二子电路与第一子电路之间的一个或多个能量供应路径或信号路径中存在异常增加的电流耗竭(drain),则这可以被解释为潜在的故障或缺陷,并且可以相应地调整通过SOC的能量流。这种调整可以例如通过以下方式来实现:将SOC配置成附加地将一个或多个电流限制器件(例如,充当电阻器的器件)连接到相应的路径中,以便限制电流,并且从而防止由所述异常增加的电流水平所引起的随之而来的故障或缺陷。
用于减轻与检测到的高电流水平相关联的风险的另一个措施可以是关断SOC本身的相关部分(例如,第二子电路内的所选FPGA区域或单元),或者在SOC的一个或多个端子处提供控制信号,以使SOC所属的整个系统的一个或多个相关部分被关断或转变成另一个操作模式,例如低功率操作模式。另一方面,如果所述测量结果指示存在电能的不足供应,则可以将附加的能量源(例如,备用功率供应)或能量调节装置连接到相应的能量路径,以便减轻随之而来的故障或缺陷可能不利地影响SOC或整个系统的操作和可靠性的风险。
根据在替代方案中实现或累积地实现的一些实施例,所述能量管理功能进一步被配置成:(i)当SOC的外围设备中的主机正在执行对应的应用程序时,从所述主机接收采用应用特定能量控制信号的形式的能量控制信号;(ii)基于所述能量控制信号来确定所述能量控制任务中的一个或多个、以及将被这种一个或多个任务所影响的子电路或其部分;以及(iii)关于所述确定的一个或多个子电路或其部分(例如,电路块)来执行所述确定的一个或多个能量控制任务。如果期望扩展SOC的可用的不同能量模式的范围,则这些实施例是特别有帮助的,这是因为除了基于主机硬件本身可能已经可用的一组能量模式之外,还可以在软件级别上实现附加的应用特定能量模式。因此,所述能量控制信号可以特别地指示这种应用特定能量模式,在所述主机上运行的应用程序希望SOC转变到这种应用特定能量模式,并且第二子电路可以相应地做出反应并且将SOC转变到该期望能量模式,该期望能量模式可能不同于或者可能并不是不同于主机硬件本身最初支持的能量模式。
在术语“包括”在本说明书和权利要求中被使用的情况下,它不排除其他元件或步骤。在不定冠词或定冠词当指代单数名词(例如,“一(a或an)”、“该”)时被使用的情况下,这包括该名词的复数,除非专门声明了其他情况。
说明书和权利要求中的术语第一、第二、第三等用于在相似的元件之间进行区分,而不一定用于描述顺序或时间或空间次序。要理解的是,如此使用的术语在适当的情况下是可互换的,并且本文中描述的本发明的实施例能够以不同于本文中描述或说明的其他顺序或次序进行操作。
附图说明
在以下详细描述和附图中提供了本发明的进一步的优点、特征和应用,在附图中:
图1示意性地图示了根据本发明的SOC的示例性实施例的基本功能图,该SOC具有第一和第二子电路,其中没有单独示出第一和第二子电路中的每一个的各种子块,而是取而代之,出于降低图示的复杂性的目的,将第一和第二子电路的总功能图示为相应的单个功能块;
图2示意性地图示了图1的示图的扩展,其中根据另一个示例性实施例,SOC另外包括第三子电路;
图3是图示了根据本发明的实施例的示例性SOC的结构的框图,其中示出了第一和第二子电路的个体电路块以及其互连。
图4是根据本发明的系统的示例性实施例的横截面图,该系统包括根据图1至图3中任一个的SOC以及具有与该SOC类似的功能的另外的IC,但是其中第一和第二子电路在不同的半导体芯片中实现。
在附图中,相同的参考符号被用于本文中描述的SOC和系统的相同或相互对应的元件。
具体实施方式
参考图1,根据本发明的实施例的SOC 1包括具有固定硬件功能(例如,微控制器)的第一子电路2、以及可重新配置的第二子电路3。第一子电路2和第二子电路3中的每一个分别以多个第一或第二电路块20至26和30至44来实现,如图3中所示。然而,在图1中,第一和第二子电路均被绘制为单个电路,这仅仅是出于降低附图复杂性的目的。特别地,第一子电路2的各种电路块被绘制为组合的单个逻辑设计2a。SOC 1具有一组端子4,用于将SOC 1连接到其外围设备,诸如装置的印刷电路板,该装置例如汽车应用的电子控制单元(ECU),诸如例如引擎控制、空调控制和信息娱乐系统、电子动力转向系统或制动系统等。
SOC 1的每一个端子4电连接到属于第二子电路3的相应焊盘5,而不存在第一子电路2到任一个端子4的直接连接。因此,第二子电路3充当针对第一子电路2的接口电路和把关者,因为后者仅能够通过第二子电路3从端子4以及因此从SOC 1的外围设备被访问。第一和第二子电路中的每一个包括一组相应的互连电路块。然而,为了降低图示的复杂性起见,在附图中没有绘制各种电路块的那些块间连接和内部电路,除非针对所选的块间连接和内部电路,其中在各种实施例的以下讨论中对其进行了具体参考。
优选地,考虑到第二子电路3关于第一子电路2的把关者功能,借助于数据加密来保护至少一个信号线6、优选地所有信号线6上的通信,以便防止篡改SOC 1,例如,篡改SOC1的目的是绕过把关者功能,并且尽管缺失授权也要获得对第一子电路的直接访问,例如用于非法的汽车调整目的。此外,第二子电路3可以包括在对应的功能块3e中提供的访问控制功能,以便实现认证过程,使得只有在成功认证后才可能经由一个或多个端子4从SOC的外围设备来访问第一子电路2。
在该非限制性示例性实施例中,第二子电路3被特别地设计为测试单元,该测试单元用于通过如下方式来测试第一子电路2(其因此可以被称为被测器件或设计,DUT)的硬件功能、特别是逻辑设计2a、相应地是个体(第二)电路块:由第二子电路3的接口块3d将一个或多个输入信号通过一组信号线6施加到第一子电路2的接口2b,并且评估响应于该一个或多个输入信号经由接口2b从第一子电路2作为返回接收到的一个或多个输出信号对一个或多个预定测试标准的符合。接口2b可以简单到仅包括用于将第二子电路3连接到第一子电路2的电接触点,或者它可以具有更高的复杂性,并且还包括一个或多个接口功能,例如如电压限制器、电荷泵、信号滤波器等这样的I/O功能。要注意的是,图2中所示的每一个块本身可以包括多个个体电路块。具体地,接口块3d实际上包括跨第二子电路的各种个体(第一)电路块而分布的多个个体接口部分。
这种测试标准可以包括例如:(i)所测量的电势是低于还是高于预定电压阈值;(ii)所测量的电流是低于还是高于预定电流阈值;(iii)局部温度是低于还是高于预定温度阈值;或者(iv)信号频率是低于还是高于预定信号阈值。具体地,被设计成承载高频信号(诸如,射频(RF)信号)的信号线6可以包括特定的阻抗匹配器件7,以便在没有不可接受的衰减或其他不利的频率相关影响的情况下优化这种高频信号在相应信号线上的传输。其他可能的测试标准可以涉及第一子电路2的其他可测量性质和操作状态。
除了在第二子电路的接口块3d与第一子电路的接口2b之间延伸的常规信号线6之外,特定的专用测量线6a、6b和6c也可以在接口块3d与第一子电路2的逻辑设计2a内的所选测量位置之间延伸。这允许在不影响第一子电路2的功能的情况下在那些所选位置处进行原位(in situ)测量。所选位置可以特别地涉及第一子电路2的例如由于高于平均值的电流、电压、温度或频率而经受较高应力的部分。
虽然该测量可以是可能例如仅在启动SOC时执行的一次性测量,但是它可以替代地在规律的基础上发生,例如以固定时间间隔或在特定的预定情形下发生。此外,基本上连续的监测是可能的,这对于安全相关应用可能特别有用。
第二子电路3的功能(特别地包括测试功能)基于第二子电路3的一组功能块,该组功能块包括例如采用现场可编程门阵列(FPGA)形式的可重新编程块、控制器块3b、例如采用嵌入式闪速存储器形式的存储器块3c、接口块3d和访问控制块3e。此外,第二子电路3也可以包括其他块(未绘制)。如已经指出的,这些块中的每一个本身可以包括多个个体分开布置的电路块。
具体地,控制器块3b可以具有多个不同的功能,它们在一方面包括控制与第一子电路2相关的测量,如上面讨论的那样。另一方面,控制器块3b被配置成评估所获得的测量结果并且相应地做出反应,以便维持第一子电路2以及因此整个SOC 1的期望功能。为了该目的,第二子电路3可以被适配成控制或反馈控制第一子电路2或其部分,诸如与第一子电路2的特定功能相关的特定电路块。例如,控制器块3b可以控制在第二与第一子电路之间的信号线6上交换的信号,并且取决于所获得的测量结果来改变它们或者开启和关断它们。
此外,如果测量结果指示第一子电路2中的与其特定功能相关的缺陷,则控制器块3b可以启动由第二子电路的对应功能对第一子电路2的该缺陷功能的代替,这可以特别地在第二子电路3的可重新编程(FPGA)块3a中实现。为了该目的,控制器块3b可以从存储器块3c加载对应的程序模式,在存储器块3c中,它先前已经被存储为库的元素,该库包含用于不同目的的一组不同程序模式。
替代地,如果第一子电路2本身的专用可重新编程功能块2h存在并且该缺陷可以分配给该可重新编程块2h,则控制器块3b可以将用于修复该缺陷的相应程序模式传送给这种块2h。具体地,该可重新编程块2h本身可以定义第一子电路2本身的测试功能,例如边界扫描功能。因此,如果已经发现该测试功能有故障或以其他方式有缺陷,则可以通过基于由第二子电路2响应于检测到SOC 1的有故障或有缺陷的错误检测功能而提供的程序模式对块2进行重新编程来修复该测试功能,这可能分别在第一和第二子电路2或3中的任一个中实现,或者甚至在SOC 1内的其他地方实现。
此外,除了其测试功能之外,第二子电路3还包括用于管理第一子电路2的能量供应的能量管理块3f。具体地,第一子电路2在其逻辑设计2a内包括采用电路块形式的示例性第一、第二和第三功能块2f、2g和2h。这些电路块中的每一个分别具有对应的能量供应块2c、2d和2c,这些能量供应块2c、2d和2c可以特别地是任何集成的电流或电压源(诸如例如,电压调节器或电荷泵),或者仅仅是开关电路或器件(例如,晶体管),该开关电路或器件能够选择性地将相应功能块与逻辑设计2a或整个第一子电路2的功率输入或其他能量供应进行连接或断开。
第一子电路2可以特别地通过在两个子电路之间延伸的相应功率供应线9从第二子电路3接收其功率供应。如图1中所示,这些功率供应线9可以连接到所述能量供应块2c、2d和2e,这些能量供应块2c、2d和2e进而可以响应于从第二子电路3的能量管理块3f接收到的相应控制信号来开启或关断、调节或提高或减少第一子电路2的对应功能块2f、2g和2h的功率供应。具体地,为了减少对于这些功能块所必要的功率供应,如果它们的功能当前不被需要、或者在总功率供应不足的场景下它们的功能与紧急模式过程中需要维持的其他功能相比具有更低的优先级,则可以选择性地将这些功能块中的一个或多个转变成低功率操作模式,诸如睡眠模式。
第二子电路3进而可以从SOC内的主要能量供应8a接收其功率。主要能量供应8a可以对应于SOC 1的一个或多个功率输入端子4或者对应于SOC 1内的能量供应单元,诸如电压调节器或电荷泵、或用于供应电能的其他电路。此外,SOC 1可以包括备用能量供应8b,在SOC 1的正常操作期间,不使用该备用能量供应8b,但是如果主要能量供应8a脱离(breakaway)或者变得以其他方式不可靠或不足,则该备用能量供应8b取而代之地被用作用于支持SOC 1的紧急功能的备份能量供应。
因此,在这种情形下,能量管理块3f可以具有如下功能:即,选择性地将来自备用能量供应8b的能量仅引导到SOC 1的那些高优先级功能块,特别地包括第一子电路2的相应高优先级电路块。此外,能量管理块3f可以选择性地重新路由主要能量供应8a或备用能量供应8b(视情况而定)所供应的能量的至少部分,以便确保该能量仅仅或至少主要被提供给SOC 1内的在给定场景中具有最高优先级的那些功能块。
例如,如果在汽车应用(例如,引擎控制)的情况下,主要能量供应8a发生故障,则能量管理块3f可以选择性地将备用能量供应8b连接到SOC 1并且特别是第一子电路2的为了维持引擎的紧急功能所必要的所选功能块,这例如足以在引擎关闭之前将车辆拉到道路侧。此外,如果主要能量供应8a尚未完全停止提供能量,则能量管理块3f可以通过如下方式来重新路由来自主要能量供应8a的能量流:将较低优先级功能块从该能量供应断开,并且将能量流取而代之地引导到所述紧急场景中需要的较高优先级功能块。因此,那些较高优先级功能块不仅可以接收它们的常规能量供应,而且它们甚至可以被供应有附加的能量,以便在给定场景中保障它们的功能。
该重新路由也可以用于其他非紧急场景中,如果至少暂时需要额外量的能量的话。例如,如果SOC 1包括闪速存储器并且需要执行闪烁(擦除)操作,则可能是这种情况,该闪烁(擦除)操作会暂时消耗高于平均值的能量,该能量高于该闪速存储器的标准能量供应所能够提供的水平。
图2示出了根据本发明的SOC 1的另一个实施例。该实施例基于图1的实施例,并且包含其所有特征。然而,它与图1的实施例的不同之处在于:SOC 1包括另外的子电路10,其在下文中被称为第三子电路,该第三子电路作为SOC 1的又一个功能并且是被包括在其中的另外的DUT。因此,第二子电路3被适配成不仅关于第一子电路2(DUT1)来执行其控制、测试、能量管理、访问控制和其他功能,如上面参考图1所描述的那样,而且还针对第三子电路10(DUT2)并且以类似的方式来执行这些功能。当然,DUT的数量不限于两个,并且因此也可以存在另外的子电路(DUT)。第三子电路10以及任何可能存在的附加子电路可以被实现为单个紧凑设计块,或者类似于第一子电路,被实现为可以在SOC 1的设计和布局内被分开布置的一组个体设计(电路)块。
以与第一子电路2类似的方式,第三子电路10包括功能逻辑设计10a和接口10b,功能逻辑设计10a包括各种子块,诸如例如子块10e、10f、10g,接口10b用于通过信号线6a和功率线9a(图2中未绘制第一子电路2的信号线6)与第二子电路3对接。逻辑设计10a进一步包括能量供应10c和10d,以与第一子电路2的能量供应块2c、2d和2e类似的方式,能量供应10c和10d可由通过一个或多个信号线6a以及接口10b从第二子电路3接收到的控制信号来控制。然而,子块10g是不具有在第二子电路的控制下的个体可控能量供应的子块的示例。例如,子块10g可以涉及逻辑设计10a的主要关键功能,该主要关键功能在任何情况下都必须被供电以用于维持第三子电路10或甚至整个SOC 1的可用性,并且因此不需要被选择性地去激活或置于低功率模式中。
参考图3,根据本发明的实施例的示例性SOC 1的结构包括半导体衬底,该半导体衬底上集成有第一子电路2和第二子电路3,第一子电路2跨一组示例性个体第一电路块20至26而分布,第二子电路3跨一组示例性个体第二电路块30至44而分布。第一电路块20至44跨SOC 1的布局而分布,并且以如下这种方式互连:即,每个第一电路块经由一个或多个信号连接6(用参考符号6标记了其中仅一个)而信号连接到SOC 1的一个或多个其他第一电路块20至26或一个或多个端子4,每个信号连接通过第二电路块30至44中的一个或多个而延伸。此外,所述信号连接6中的一个或多个可借助于属于相应信号连接6的相应一个或多个第二电路块30至44来重新配置,优选地,动态地和可逆地重新配置,使得SOC 1在其操作期间可通过重新配置所述第二电路块30至44中的至少一个的方式来重新配置。
因此,在该示例性实施例中,在第一电路块20至26中的任一个与焊盘5、相应地连接到焊盘5的端子4以及因此与SOC 1的外围设备之间不存在直接连接。第一电路块20至26中的一个与SOC 1的端子4之间的任何连接都通过第二电路块30至44中的至少一个而延伸,从而共同提供针对第一子电路2的把关者功能。然而,要注意的是,在其他实施例中,在第一电路块与一个或多个其他第一电路块之间和/或一个或多个端子之间可以另外存在一个或多个直接连接。
虽然所有电路块可直接或间接连接(大多数连接未绘制)到SOC 1的主要功率供应8a,但是包括第二电路块中的一个或多个的至少子集(在本示例中是电路块30和31)包括针对第一电路块的至少子集(在本示例中是电路块20至22)的能量管理功能,如上面详细讨论的那样。为了该目的,电路块30、31在一方面直接或间接连接到主要功率供应8a,并且被设计成经由相应功率线9选择性地将块20至22中的每一个连接到主要功率供应8a和附加备用功率供应8b中的至少一个,或者将它们从主要功率供应8a和附加备用功率供应8b中断开。功率供应8a和8b中的每一个可以是片上的,例如以电压调节器或电荷泵或任何其他种类的电压源或电流源的形式,或者替代地是片外的,并且可通过端子4的子集连接到SOC 1上的相应功率线。
参考图4,根据本发明的实施例的SOC 1可以特别地在相同系统内与一个或多个其他SOC 1组合,或者与电子组件13或一组个体电子组件组合,该电子组件13或一组个体电子组件还包括相应的第一子电路2'和相应的第二子电路3',每个子电路分别具有本文中针对子电路2和3描述的相应功能。特别地,SOC 1以及所述电子组件13中的一个或多个可以被组合,以便可选地与另外的子电路或SOC一起形成SIP、MCM、包括公共衬底(例如,PCB)的系统,SOC 1和该至少一个另外的电子组件被安装在该公共衬底上。在后一种情况下,SOC 1和电子组件13中的至少一个可以至少部分地嵌入在该公共衬底的凹部中,或者(如图4中所呈现的那样)以堆叠式封装(PoP)结构被堆叠在彼此之上。其中,SOC 1包括具有端子4的封装衬底11、以及用于包封(encapsulate)SOC 1的模具块体(mold mass)12。电子组件13包括具有端子4'的其自己的封装衬底11'、第一子电路2'和第二子电路3',它们一起被模具块体12'所包封。
这种系统可以具有如下优点:即,两种类型的实施例(多芯片和SOC)的相应优势可以在合适的分区中同时使用。特别地,该系统的组件——针对这些组件,相应第二子电路优选地被集成在与第一子电路相同的半导体管芯上,例如如果需要在这两个子电路之间交换RF信号的话——可以优选地被提供作为SOC实施例。然而,该系统的其他组件、并且特别地是其中第二子电路的制造技术需要与第一子电路的制造技术基本上不同的那些组件、或其中频繁的产品更新是预期且必要的那些组件可能优选地被提供作为多芯片实施例。例如,如果第二子电路不限于逻辑设计,而是另外包括功率电路或重要的存储器电路,则其制造技术可能必须与第一子电路的制造技术显著不同(第一子电路可能例如仅需要标准CMOS技术),并且因此根据多芯片实施例的实现方式将是必要的或者至少是优选的。
虽然上面已经描述了本发明的至少一个示例性实施例,但是必须注意的是,存在对其大量的变型。此外,要领会的是,所描述的示例性实施例仅说明了可以如何实现本发明的非限制性示例,并且不意图限制本文中描述的装置和方法的范围、应用或配置。而是,前面的描述将向本领域技术人员提供用于实现本发明的至少一个示例性实施例的构造,其中必须理解的是,在不脱离由所附权利要求及其合法等同物限定的主题的情况下,可以对示例性实施例的元件的布置和功能进行各种改变。
参考符号列表
1 SOC
2 第一子电路
2a 第一子电路的功能逻辑设计块,例如微控制器,
2b 第一子电路的接口
2c 第一子电路的第一功能块的能量供应
2d 第一子电路的第二功能块的能量供应
2e 第一子电路的第三功能块的能量供应
2f 第一子电路的第一功能块
2g 第一子电路的第二功能块和测试功能
2h 第一子电路的第三功能块,可重新编程的
3 第二子电路
3a 第二子电路的可重新编程块,例如FPGA块
3b 第二子电路的控制器块
3c 第二子电路的存储器块,例如嵌入式闪速存储器
3d 第二子电路的接口块
3e 第二子电路的访问控制块
3f 第二子电路的能量管理块
4 SOC的端子
5 第二子电路上的焊盘
6 第一子电路与第二子电路之间的信号线
6a、b、c 专用测量线
6d 第一子电路与第三子电路之间的信号线
7 阻抗匹配器件
8a 主要能量供应
8b 备用能量供应
9 去往第一子电路的功率供应线
9a 去往第三子电路的功率供应线
10 第三子电路
10a 第三子电路的功能逻辑设计
10b 第三子电路的接口
10c 第三子电路的第一功能块的能量供应
10d 第三子电路的第二功能块的能量供应
10e 第三子电路的第一功能块
10f 第三子电路的第二功能块和测试功能
11、11' 封装衬底,
12、12' 封装的模具块体
13 电子组件
20-26 第一子电路的第一电路块
30-44 第二子电路的第二电路块
Claims (17)
1.一种片上系统SOC,包括:
第一子电路,其具有所定义的接口和所定义的固定硬件功能;
第二可重新配置子电路,其经由所述接口而信号连接到第一子电路以与其交换信号;以及
一个或多个端子,用于将所述SOC电连接到其外围设备;
其中:
第二子电路被配置为一个或多个端子与第一子电路之间的接口电路;
第一子电路被划分成多个个体第一电路块;
第二子电路被划分成多个个体第二电路块;以及
所述第一电路块中的至少一个经由一个或多个信号连接而信号连接到一个或多个其他第一电路块或一个或多个端子,每个信号连接通过第二电路块中的一个或多个而延伸;以及
所述信号连接中的一个或多个可借助于属于相应信号连接的相应一个或多个第二电路块来重新配置,使得所述SOC在其操作之前或期间可通过重新配置所述第二电路块中的至少一个的方式来重新配置。
2.根据前述权利要求中任一项所述的SOC,其中所述SOC被适配成:在其操作期间、通过根据基于机器学习的重新配置过程来重新配置所述至少一个第二电路块从而动态地重新配置其本身。
3.根据权利要求2所述的SOC,其中所述SOC被适配成:应用所述基于机器学习的重新配置过程,以用于根据定义了所述SOC的当前或即将到来的操作场景的一个或多个输入参数的值,来针对该操作场景动态地确定所述第二电路块中的两个或更多个的多个可能配置的集合当中的相应优化配置。
4.根据前述权利要求中任一项所述的SOC,其中第二电路块的第一子集被实现为相应的固定硬件电路块,并且第二电路块的不相交的第二子集被实现为相应的可重新配置电路块。
5.根据前述权利要求中任一项所述的SOC,其中第二子电路进一步被配置为集成测试单元,所述集成测试单元用于通过如下方式来测试第一子电路的所述固定硬件功能:向第一电路施加一个或多个输入信号,并且评估响应于所述一个或多个输入信号经由所述接口从第一子电路接收到的一个或多个输出信号对一个或多个预定测试标准的符合。
6.根据权利要求4和5所述的SOC,其中:
第二电路块的第一子集中的两个或更多个电路块均实现相应的特定测试仪器,以用于测试第一子电路的所述固定硬件功能的相关方面;以及
第二电路块的第二子集中的两个或更多个电路块是可重新配置的,从而选择性地将这些测试仪器连接到第一子电路,以便选择性地使得能够通过相应的一个或多个所连接的测试仪器来进行其测试。
7.根据权利要求5或6所述的SOC,其中第一子电路与第二子电路之间的信号连接包括一个或多个专用测量线,所述一个或多个专用测量线被专门配置成用于在第一子电路内的相应预定测量点处测试、测量或监测第一子电路或其功能,而不控制或以其他方式影响所述功能。
8.根据前述权利要求中任一项所述的SOC,其中第一电路块的至少子集均实现第一子电路的特征集合中的相应特定可选择的预定义功能特征;以及
第二电路块中的一个或多个是可重新配置的,从而选择性地将第一电路块的所述子集中的第一电路块连接到其他第二电路块或一个或多个端子,以便选择性地使得所述SOC能够执行这些第一电路块中的相应连接的第一电路块的相应一个或多个功能特征。
9.根据前述权利要求中任一项所述的SOC,其中所述SOC被配置成使得一个或多个端子与第一子电路之间的任何信号传递通过第二子电路,这因此形成了一个或多个端子与第一子电路之间的唯一接口电路。
10.根据前述权利要求中任一项所述的SOC,其中第二子电路进一步被配置成关于第一子电路来执行以下功能中的一个或多个:
测量或监测第一子电路的一个或多个信号或电气性质;
控制或反馈控制第一子电路;
通过在第二子电路中而不是在第一子电路中执行第一子电路的一个或多个功能来代替第一子电路的一个或多个功能;
通过利用存在于第二子电路中的程序数据对第一子电路的可重新编程部分进行重新编程来代替该部分的一个或多个功能;或者
通过执行第一子电路的功能的一个或多个扩展来扩展第一子电路的一个或多个功能。
11.根据权利要求10所述的SOC,其中第一子电路的要被代替的功能是被所述SOC的错误检测功能检测为有缺陷的功能。
12.根据权利要求10或11所述的SOC,其中第二子电路进一步被配置成:至少部分地代替或扩展在第一子电路本身中实现的测试功能。
13.根据前述权利要求中任一项所述的SOC,其中第一子电路与第二子电路之间的信号连接中的至少一个是电连接,所述电连接包括一个或多个阻抗匹配器件,所述一个或多个阻抗匹配器件被配置成优化所述电连接上的RF信号的正确传输。
14.根据前述权利要求中任一项所述的SOC,其中所述SOC进一步被配置成:
借助于数据加密来保护要在第一子电路与第二子电路之间通过信号连接传送的数据;和/或
基于预定访问控制规则来监测和控制要在所述SOC的外围设备与第一子电路之间交换的信号。
15.根据前述权利要求中任一项所述的SOC,其中:
第二子电路进一步包括能量管理功能,所述能量管理功能用于管理对第一子电路或其部分的能量供应;以及
所述能量管理功能被配置成响应于接收到相应能量控制信号来执行以下能量控制任务中的一个或多个:
选择性地开启或关断对第一子电路的一个或多个所选电路部分的相应能量供应;
选择性地使第一子电路的一个或多个所选电路部分转变成相应的低能量操作模式;
选择性地将总可用能量的供应的至少部分重新路由到第一子电路的一个或多个所选部分,使得所述能量仅仅或主要可用于那些所选部分,同时相应地中断或减少对未选择部分的能量供应;
选择性地将备用能量供应、被配置成减少能量供应的器件或电路、或能量调节电路连接到第一子电路的一个或多个所选部分的相应能量供应路径,以分别实现对第一子电路的一个或多个所选部分的能量供应的增加、减少或调节。
16.根据权利要求15所述的SOC,其中所述SOC本身进一步被配置成:基于对通过一个或多个端子或在第二子电路与第一子电路之间的一个或多个电连接上的电能流的测量来生成能量控制信号。
17.根据权利要求15所述的SOC,其中所述能量管理功能进一步被配置成:
当所述SOC的外围设备中的主机正在执行对应的应用程序时,从所述主机接收采用应用特定能量控制信号的形式的能量控制信号;
基于所述能量控制信号来确定所述能量控制任务中的一个或多个、以及将被这种一个或多个任务所影响的子电路或其电路块;以及
关于所述确定的一个或多个子电路或其电路块来执行所述确定的一个或多个能量控制任务。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19169878.6A EP3726394A1 (en) | 2019-04-17 | 2019-04-17 | Reconfigurable system-on-chip |
EP19169878.6 | 2019-04-17 | ||
PCT/EP2020/060228 WO2020212262A1 (en) | 2019-04-17 | 2020-04-09 | Reconfigurable system-on-chip |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114096955A true CN114096955A (zh) | 2022-02-25 |
Family
ID=66448304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080044400.6A Pending CN114096955A (zh) | 2019-04-17 | 2020-04-09 | 可重新配置的片上系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220197854A1 (zh) |
EP (1) | EP3726394A1 (zh) |
KR (1) | KR20210151963A (zh) |
CN (1) | CN114096955A (zh) |
WO (1) | WO2020212262A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312856B (zh) * | 2021-05-14 | 2022-04-26 | 湘潭大学 | 一种结合数值计算的电动汽车电池包热管理控制仿真方法 |
CN118020072A (zh) | 2021-09-17 | 2024-05-10 | 大众汽车股份公司 | 用于网络安全增强的方法和装置 |
US12079158B2 (en) * | 2022-07-25 | 2024-09-03 | Xilinx, Inc. | Reconfigurable neural engine with extensible instruction set architecture |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020104051A1 (en) * | 2001-01-31 | 2002-08-01 | Stmicroelectronics, Inc. | Embedded field programmable gate array for performing built-in self test functions in a system on a chip and method of operation |
US20060095756A1 (en) * | 2004-07-01 | 2006-05-04 | Thomas Erforth | Multimedia system for a vehicle |
US20080098203A1 (en) * | 2001-11-30 | 2008-04-24 | Qst Holdings, Inc. | Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry havingf fixed, application specific computational elements |
CN101784905A (zh) * | 2007-08-14 | 2010-07-21 | Nxp股份有限公司 | 用于对片上系统的制造进行控制的设计信息的验证 |
CN102483721A (zh) * | 2009-05-09 | 2012-05-30 | 赛普拉斯半导体公司 | 用于芯片上系统的可动态重新配置的模拟路由电路及方法 |
CN105452988A (zh) * | 2013-08-21 | 2016-03-30 | Arm有限公司 | 功率信号接口 |
US20190049912A1 (en) * | 2017-12-28 | 2019-02-14 | Intel Corporation | Fpga based functional safety control logic (ffscl) |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5825202A (en) * | 1996-09-26 | 1998-10-20 | Xilinx, Inc. | Integrated circuit with field programmable and application specific logic areas |
US5841790A (en) * | 1997-04-08 | 1998-11-24 | International Business Machines Corporation | Apparatus for testing an adapter card ASIC with reconfigurable logic |
FR2797958B1 (fr) * | 1999-08-31 | 2001-10-26 | Alstom | Procede et dispositif de test du fonctionnement d'une unite electronique par simulation et installation de test d'unite a embarquer sur un materiel ferroviaire ou un vehicule electrique |
US8176296B2 (en) * | 2000-10-26 | 2012-05-08 | Cypress Semiconductor Corporation | Programmable microcontroller architecture |
US7521960B2 (en) * | 2003-07-31 | 2009-04-21 | Actel Corporation | Integrated circuit including programmable logic and external-device chip-enable override control |
WO2006024957A2 (en) * | 2004-07-01 | 2006-03-09 | Harman Becker Automotive Systems Gmbh | Computer architecture for a multimedia system used in a vehicle |
US8185720B1 (en) * | 2008-03-05 | 2012-05-22 | Xilinx, Inc. | Processor block ASIC core for embedding in an integrated circuit |
DE102013104320A1 (de) * | 2013-04-29 | 2014-10-30 | Dspace Digital Signal Processing And Control Engineering Gmbh | Flexible Aufteilung der I/O Kanäle einer Hardware Kompomente |
WO2015032666A1 (en) * | 2013-09-04 | 2015-03-12 | Zentrum Mikroelektronik Dresden Ag | Fpga power management system |
US10562439B2 (en) * | 2016-01-19 | 2020-02-18 | Harman International Industries, Incorporated | Techniques for optimizing vehicle headlights based on situational awareness |
US10592450B2 (en) * | 2016-10-20 | 2020-03-17 | Micron Technology, Inc. | Custom compute cores in integrated circuit devices |
US10481858B2 (en) * | 2017-12-06 | 2019-11-19 | Harman International Industries, Incorporated | Generating personalized audio content based on mood |
-
2019
- 2019-04-17 EP EP19169878.6A patent/EP3726394A1/en active Pending
-
2020
- 2020-04-09 WO PCT/EP2020/060228 patent/WO2020212262A1/en active Application Filing
- 2020-04-09 US US17/603,896 patent/US20220197854A1/en active Pending
- 2020-04-09 KR KR1020217037332A patent/KR20210151963A/ko not_active Application Discontinuation
- 2020-04-09 CN CN202080044400.6A patent/CN114096955A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020104051A1 (en) * | 2001-01-31 | 2002-08-01 | Stmicroelectronics, Inc. | Embedded field programmable gate array for performing built-in self test functions in a system on a chip and method of operation |
US20080098203A1 (en) * | 2001-11-30 | 2008-04-24 | Qst Holdings, Inc. | Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry havingf fixed, application specific computational elements |
US20060095756A1 (en) * | 2004-07-01 | 2006-05-04 | Thomas Erforth | Multimedia system for a vehicle |
CN101784905A (zh) * | 2007-08-14 | 2010-07-21 | Nxp股份有限公司 | 用于对片上系统的制造进行控制的设计信息的验证 |
CN102483721A (zh) * | 2009-05-09 | 2012-05-30 | 赛普拉斯半导体公司 | 用于芯片上系统的可动态重新配置的模拟路由电路及方法 |
CN105452988A (zh) * | 2013-08-21 | 2016-03-30 | Arm有限公司 | 功率信号接口 |
US20190049912A1 (en) * | 2017-12-28 | 2019-02-14 | Intel Corporation | Fpga based functional safety control logic (ffscl) |
Also Published As
Publication number | Publication date |
---|---|
WO2020212262A1 (en) | 2020-10-22 |
US20220197854A1 (en) | 2022-06-23 |
KR20210151963A (ko) | 2021-12-14 |
EP3726394A1 (en) | 2020-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114096955A (zh) | 可重新配置的片上系统 | |
US6067633A (en) | Design and methodology for manufacturing data processing systems having multiple processors | |
JP3165158B2 (ja) | Cpuキャッシュと命令ユニットの並列試験方法及びシステム | |
US20050204232A1 (en) | Technique for combining scan test and memory built-in self test | |
US20100333058A1 (en) | Method for increasing the manufacturing yield of programmable logic devices | |
CN114391107A (zh) | 具有集成自我测试功能的电子组件和系统 | |
US11416050B2 (en) | Component communications in system-in-package systems | |
JP4232621B2 (ja) | 半導体集積回路装置 | |
US20080307282A1 (en) | System and Method for Electronic Device Development | |
US10310007B2 (en) | Semiconductor apparatus and system | |
JP7312073B2 (ja) | 半導体集積回路装置 | |
US8887017B2 (en) | Processor switchable between test and debug modes | |
Im et al. | Advanced safety test solution for automotive SoC based on In-System-Test architecture | |
US20220390970A1 (en) | Component communications in system-in-package systems | |
US20030156393A1 (en) | Primary functional circuit board suitable for use in verifying chip function by alternative manner | |
KR20180089632A (ko) | 반도체 장치 및 반도체 장치의 테스트 방법 | |
US20240005709A1 (en) | Method for testing a control device | |
US11698833B1 (en) | Programmable signal aggregator | |
US20240003972A1 (en) | Method and system for testing semiconductor circuits | |
US20230409518A1 (en) | Arithmetic operation device, testing method | |
JP2010165819A (ja) | 半導体集積回路の試験装置、試験方法 | |
JP2023088881A (ja) | 細粒度のテスト電力制御のための分散されたメカニズム | |
US20090224604A1 (en) | Semiconductor device having plural power source terminals coupled to function block and method of controlling the same | |
US20100052767A1 (en) | Semiconductor module | |
KR20080039702A (ko) | 시스템온칩 및 그 테스트 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220321 Address after: Wolfsburg, Germany Applicant after: Volkswagen Automotive Co.,Ltd. Address before: Wolfsburg, Germany Applicant before: Volkswagen Automotive Co.,Ltd. Applicant before: Degop Electronics Co.,Ltd. |
|
TA01 | Transfer of patent application right |