CN117253518A - 一次性可编程存储器控制器、相关处理系统、集成电路和方法 - Google Patents
一次性可编程存储器控制器、相关处理系统、集成电路和方法 Download PDFInfo
- Publication number
- CN117253518A CN117253518A CN202310708723.6A CN202310708723A CN117253518A CN 117253518 A CN117253518 A CN 117253518A CN 202310708723 A CN202310708723 A CN 202310708723A CN 117253518 A CN117253518 A CN 117253518A
- Authority
- CN
- China
- Prior art keywords
- shadow register
- signal
- preload
- circuit
- data
- 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
- 230000015654 memory Effects 0.000 title claims abstract description 253
- 238000012545 processing Methods 0.000 title claims abstract description 126
- 238000000034 method Methods 0.000 title claims abstract description 6
- 230000036316 preload Effects 0.000 claims abstract description 76
- 238000004891 communication Methods 0.000 claims abstract description 70
- 230000000977 initiatory effect Effects 0.000 claims abstract 2
- 230000004044 response Effects 0.000 claims description 56
- 238000013507 mapping Methods 0.000 claims description 12
- 238000012544 monitoring process Methods 0.000 claims description 12
- 230000002093 peripheral effect Effects 0.000 description 17
- 238000012546 transfer Methods 0.000 description 11
- 101100462378 Danio rerio otpb gene Proteins 0.000 description 6
- 230000015572 biosynthetic process Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 238000003786 synthesis reaction Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 101100301524 Drosophila melanogaster Reg-5 gene Proteins 0.000 description 1
- 102100023882 Endoribonuclease ZC3H12A Human genes 0.000 description 1
- 101710112715 Endoribonuclease ZC3H12A Proteins 0.000 description 1
- 101001096074 Homo sapiens Regenerating islet-derived protein 4 Proteins 0.000 description 1
- 108700012361 REG2 Proteins 0.000 description 1
- 101150108637 REG2 gene Proteins 0.000 description 1
- 108091058543 REG3 Proteins 0.000 description 1
- 101100120298 Rattus norvegicus Flot1 gene Proteins 0.000 description 1
- 101100412403 Rattus norvegicus Reg3b gene Proteins 0.000 description 1
- 102100027336 Regenerating islet-derived protein 3-alpha Human genes 0.000 description 1
- 102100037889 Regenerating islet-derived protein 4 Human genes 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- QGVYYLZOAMMKAH-UHFFFAOYSA-N pegnivacogin Chemical compound COCCOC(=O)NCCCCC(NC(=O)OCCOC)C(=O)NCCCCCCOP(=O)(O)O QGVYYLZOAMMKAH-UHFFFAOYSA-N 0.000 description 1
- 230000007420 reactivation Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2216/00—Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
- G11C2216/12—Reading and writing aspects of erasable programmable read-only memories
- G11C2216/26—Floating gate memory which is adapted to be one-time programmable [OTP], e.g. containing multiple OTP blocks permitting limited update ability
Landscapes
- Power Sources (AREA)
Abstract
本公开的一个或多个实施例涉及一次性可编程存储器控制器、相关处理系统、集成电路和方法。在一个实施例中,一次性可编程(OTP)存储器控制器包括:数据寄存器;给定数目K个影子寄存器,其中数目K小于OTP存储器区域的存储器插槽的给定数目N;被配置为接收请求给定存储器插槽的数据的读取请求的通信接口;以及被配置为接收预加载开始信号和影子寄存器预加载使能信号的控制电路,其中控制电路被配置为管理预加载阶段和数据读取阶段。
Description
相关申请的交叉引用
本申请要求于2022年6月16日提交的意大利申请102022000012764的权益,该申请通过引用并入本文。
技术领域
本公开涉及用于管理OTP存储器的解决方案。
背景技术
图1示出了典型的电子系统,诸如车辆的电子系统。该电子系统包括多个处理系统10,诸如嵌入式系统或集成电路,例如现场可编程门阵列(FPGA)、数字信号处理器(DSP)或微控制器(例如,专用于汽车市场)。
例如,在图1中,示出了通过合适的通信系统20连接的三个处理系统101、102和103。例如,通信系统可以包括车辆控制总线(诸如控制器局域网(CAN)总线)和经由网关连接到车辆控制总线的可能的多媒体总线(诸如媒体导向系统传输(MOST)总线)。通常,处理系统10位于车辆的不同位置,并且可以包括例如引擎控制单元、变速器控制单元(TCU)、防抱死制动系统(ABS)、车身控制模块(BCM)和/或导航和/或多媒体音频系统。因此,处理系统10中的一个或多个也可以实现实时控制和调节功能。这些处理系统通常被标识为电子控制单元。
在这方面,预计未来几代的该种处理系统10(例如,适用于汽车应用的微控制器)将表现出复杂性的增加,这主要是由于所请求的功能(新协议、新特征等)的数目不断增加、以及执行条件的严格限制(例如,更低的功耗、增加的计算能力和速度等)。例如,最近提出了更复杂的多核处理系统10。例如,这样的多核处理系统可以用于执行(并行)图1所示的处理系统10中的若干处理系统10,诸如车辆的若干ECU。
图2示出了处理系统10的示例,诸如多核处理系统。具体地,在所考虑的示例中,处理系统10包括连接到(片上)通信系统114的一个或多个处理核心102,诸如n个处理核心1021……102n。例如,在实时控制系统的上下文中,处理核心1021……102n可以是ARM-R52核心。通常,通信系统114可以包括一个或多个总线系统,例如,基于高级可扩展接口(AXI)总线架构和/或片上网络(NoC)。
例如,如处理核心1021的示例所示,每个处理核心102可以包括微处理器1020和通信接口1022,该通信接口1022被配置为管理微处理器1020与通信系统114之间的通信。通常,接口1022是主接口,该主接口被配置为将给定(读取或写入)请求从微处理器1020转发到通信系统114,并且将可选的响应从通信系统114转发到微处理器1020。然而,通信接口1022还可以包括从接口。例如,以这种方式,第一微处理器1020可以(经由第一微处理器的通信接口1022、通信系统114和第二微处理器的通信接口1022)向第二微处理器1020发送请求。通常,每个处理核心1021……102n还可以包括另外的本地资源,诸如一个或多个本地存储器1026,通常被标识为紧密耦合存储器(TCM)。
通常,处理核心102被布置为与一个或多个非易失性存储器104和/或一个或多个易失性存储器104b交换数据。通常,存储器104和/或104b可以与处理核心102集成在单个集成电路中,或者存储器104和/或104b可以是单独的集成电路的形式,并且例如经由印刷电路板的迹线连接到处理核心102。
具体地,在多核处理系统10中,这些存储器通常是系统存储器,即对处理核心1021……102n共享。例如,为此,与存储器104和/或104b的通信可以经由连接到通信系统114的一个或多个存储器控制器100来执行。然而,如前所述,每个处理核心102可以包括一个或多个附加本地存储器1026。
例如,由(多个)微处理器1020执行的软件通常存储在非易失性程序存储器104中,诸如闪存或EEPROM,即,存储器104被配置为存储处理单元102的固件,其中固件包括要由微处理器102执行的软件指令。相反,诸如随机存取存储器(RAM)等易失性存储器104b可以用于存储临时数据。
通常,处理系统10还包括例如选自以下各项中的一项或多项(硬件)资源/外围设备106:
-一个或多个通信接口,例如,用于经由通信系统20来交换数据,诸如通用异步接收器/传输器(UART)、串行外围接口总线(SPI)、集成电路间(I2C)、控制器局域网(CAN)总线和/或以太网接口、和/或调试接口;和/或
-一个或多个模数转换器和/或数模转换器;和/或
-一个或多个专用数字组件,诸如硬件定时器和/或计数器、或密码协处理器;和/或
-一个或多个模拟组件,诸如比较器、传感器,诸如温度传感器等;和/或
-一个或多个混合信号组件,诸如PWM(脉宽调制)驱动器。
资源106通常经由相应通信接口1062连接到通信系统114。例如,接口1062中的一个或多个可以经由外围桥接器107连接到通信系统114。例如,为此目的,通信系统实际上可以包括高级微控制器总线架构(AMBA)高性能总线(AHB)114、以及用于经由外围桥接器107将资源/外围设备106连接到AMBA AHB总线114的高级外围总线(APB)114b。通常,通信接口1062至少包括从接口。例如,这样处理核心102可以向资源106发送请求,并且资源返回给定数据。通常,通信接口1062中的一个或多个还可以包括相应主接口。例如,在资源必须开始通信以便经由(读取和/或写入)请求与连接到通信系统114的另一电路(诸如资源106或处理核心102)交换数据的情况下,这种通常被标识为集成直接存储器访问(DMA)控制器的主接口可以是有用的。
如图2所示,通常,这样的处理系统10还包括例如用保险丝实现的一次性可编程(OTP)存储器120。例如,这种OTP存储器120可以用于存储处理系统的配置数据。通常,存储到OTP存储器120的配置数据经由以下方式来读取:
-由微处理器1020执行的软件指令;和/或
-被配置为至少部分读取OTP存储器120的内容的硬件配置电路108。
例如,存储到OTP存储器120的配置数据可以包括第一组配置数据,该第一组配置数据包括以下中的一项或多项:
-校准数据,
-引导信息;
-一个或多个资源106的配置数据,诸如以太网通信接口106的媒体访问控制(MAC)地址;
-处理系统10的生命周期数据;
-安全配置数据,例如,用于启用或禁用存储器104、104b和/或120中的存储器位置、和/或处理系统的调试接口;和/或
-由密码协处理器使用的密码数据,诸如一个或多个密码密钥和/或公共和私有证书。
第一组配置数据中的这样的配置数据通常存储到OTP存储器120内的专用存储器位置,并且在处理系统10接通时经由硬件配置电路108来读取。然而,OTP存储器120通常也可以用于存储第二组配置数据,该第二组配置数据可以用于存储用户和/或产品特定数据。通常,第二组配置数据不是经由硬件配置电路108读取的,而是可以经由由微处理器1020执行的软件指令来读取。
因此,通常,OTP存储器120以某种方式连接到通信系统114,例如经由存储器控制器100和/或外围桥接器107和/或直接连接。因此,以这种方式,微处理器1020可以通过向通信系统114发送读取请求来从OTP存储器120中读取数据,其中读取请求分别包括:
-由存储器控制器100管理的地址;
-由外围桥接器107管理的地址;
-直接是与OTP存储器120的接口相关联的地址。
类似地,硬件配置电路108可以经由通信系统114与OTP存储器120通信,或者直接经由存储器控制器100与外围桥接器107或OTP存储器120通信。
因此,如图3所示,OTP存储器120包括OTP存储器区域1200,OTP存储器区域1200包括多个存储器插槽OTP1、OTP2、……、OTPN,其中每个存储器插槽具有给定比特数目的给定字大小,诸如8、16、32或64个比特。此外,OTP存储器120包括通信接口1202,通信接口1202例如用于将OTP存储器120连接到通信系统114,诸如用于将OTP存储器120连接到外围总线114b的外围总线接口1202。
因此,在所考虑的示例中,OTP存储器120可以经由接口1202接收读取请求,其中读取请求包括指示存储器插槽OTP1、OTP2、……、OTPN中的给定存储器插槽的数据,诸如地址。因此,控制电路1204可以从存储器区域1200中读取相应数据,将所读取的数据存储到寄存器1206,并且通信接口1202可以将所存储的数据返回到寄存器1206。
如图3所示,这种OTP存储器120通常包括一个或多个影子寄存器1208。在这种情况下,OTP存储器120通常接收指示处理系统10已经接通的信号POK。响应于该信号POK,控制电路1204从OTP存储器区域1200中读取数据,并且将所读取的数据存储到影子寄存器1206。通常,一旦完成读取操作,控制电路1204就断言信号OTP_DONE,例如,该信号可以用于启动硬件配置电路108。因此,在这种情况下,当接收到读取请求时,通信接口1202可以从影子寄存器1208中读取数据,从而加速对被存储到OTP存储器120的数据的访问。通常,如图3示意性地所示,当存储到影子寄存器1208中的一个或多个的数据被直接提供给处理系统10的一个或多个其它电路时,也可以使用这样的影子寄存器1208,即,不经过通信系统114和/或114b。例如,这可以应用于安全和/或密码配置数据,这些数据优选地不经由通信通道114和/或114b来传输。
通常,在一些OTP存储器120中,并非所有存储器位置都确实具有相关联的相应影子寄存器1208,而是仅存储器位置OTP1、OTP2、……、OTPN的一部分/子集被传输到相应影子寄存器1208,诸如被配置为由硬件配置电路108读取的存储器位置,而其它存储器位置OTP1、OTP2、……、OTPN可以要求控制电路1204首先从相应存储器位置1200中读取数据,并且将数据存储到(共享)寄存器1206。
如图3所示,这种OTP存储器120通常还包括一个或多个另外的通信接口,诸如:
-用于与另一电路进行认证的通信接口1210,诸如Coresight认证接口;和/或
-用于处理系统10的调试接口的通信接口1212,诸如JTAG接口,其例如可以用于将数据编程到存储器区域1200。
例如,这种OTP存储器120在STM32MP1引导和安全控制器(BSEC)的上下文中是已知的。
发明人已经观察到,经由影子寄存器1208的这样的预加载机制可能相当低效,特别是在处理系统10使用低功率模式的情况下,其中处理系统10在执行给定任务之后关断,并且响应于给定事件而再次接通。事实上,在这种情况下,处理系统10、特别是硬件配置电路108和/或期望从OTP存储器120接收数据的其它电路在信号OTP_DONE被断言之前不能被启动。在这点上,典型的OTP存储器120可能需要例如每字10微秒的读取时间。因此,当使用更大的OTP存储器(诸如具有超过1000个比特的OTP存储器)时,处理系统10的引导时间显著增加。此外,在每次引导时加载密码数据也可能使处理系统10面临安全风险。
发明内容
实施例提供了用于更高效地管理OTP存储器的解决方案。
如前所述,本公开的各种实施例涉及一种被配置为管理OTP存储器区域的OTP存储器控制器,例如,其为集成电路的形式。具体地,在各种实施例中,OTP存储器区域包括给定数目N个存储器插槽。在各种实施例中,OTP存储器控制器包括数据寄存器和给定数目K个影子寄存器,其中数目K小于数目N。通信接口被配置为至少接收请求给定存储器插槽的数据的读取请求。
具体地,在各种实施例中,OTP存储器控制器包括被配置为接收预加载开始信号和影子寄存器预加载使能信号的控制电路。例如,影子寄存器预加载使能信号可以具有给定数目的N个比特,其中每个比特指示相应存储器插槽是否应当被预加载。备选地,影子寄存器预加载使能信号可以具有给定数目K个比特,其中每个比特指示相应影子寄存器是否应当被预加载。然而,其它编码方案也可以用于影子寄存器预加载使能信号。
在各种实施例中,控制电路被配置为管理预加载阶段和数据读取阶段。具体地,响应于预加载开始信号,控制电路被配置为开启预加载阶段。在各种实施例中,在预加载阶段期间,控制电路确定影子寄存器与存储器插槽之间的映射。例如,出于这个目的,控制电路可以接收影子寄存器映射信号,并且根据影子寄存器映射信号来确定给定数目K个影子寄存器与给定数目N个存储器插槽之间的映射。类似的影子寄存器映射信号也可以仅在控制电路的合成过程中使用,由此相应映射例如经由组合逻辑电路来实现。
接下来,控制电路根据影子寄存器预加载使能信号来为每个影子寄存器确定相应影子寄存器是否应当被预加载。例如,响应于确定影子寄存器应当被预加载,控制电路可以从映射到影子寄存器的存储器插槽向相应影子寄存器传输数据。最后,一旦基于影子寄存器预加载使能信号预加载影子寄存器,控制电路就断言预加载结束信号并且开启数据读取阶段。
在各种实施例中,在数据读取阶段,控制电路被配置为经由通信接口接收读取请求,并且选择在读取请求中指示的相应存储器位置。接下来,控制电路确定所选择的存储器位置是否被映射到影子寄存器。具体地,响应于确定所选择的存储器位置被映射到影子寄存器,控制电路选择映射到所选择的存储器位置的影子寄存器,并且确定所选择的影子寄存器是否已经被预加载。在各种实施例中,响应于确定所选择的影子寄存器已经被预加载,控制电路经由通信接口直接传输存储到所选择的影子寄存器的数据,即,不访问OTP存储器区域。相反,响应于确定所选择的影子寄存器尚未被预加载,控制电路从所选择的存储器插槽向所选择的影子寄存器传输数据,并且然后经由通信接口传输存储到所选择的影子寄存器的数据。相反,响应于确定所选择的存储器位置未被映射到影子寄存器,控制电路可以从所选择的存储器插槽向数据寄存器传输数据,并且然后经由通信接口传输存储到数据寄存器的数据。
在各种实施例中,控制电路还可以管理数据写入/编程阶段。在这种情况下,控制电路可以被配置为经由通信接口接收写入请求,并且选择在写入请求中指示的相应存储器位置,其中写入请求包括要存储到所选择的存储器位置的相应数据。例如,在各种实施例中,控制电路可以确定所选择的存储器位置是否被映射到影子寄存器。响应于确定所选择的存储器位置被映射到影子寄存器,控制电路可以选择映射到所选择的存储器单元的影子寄存器,将数据存储到所选择的影子寄存器,并且将存储到所选择的影子寄存器的数据编程到所选择的存储器位置。相反,响应于确定所选择的存储器位置没有映射到影子寄存器,控制电路可以将数据存储到数据寄存器,并且将存储到数据寄存器的数据编程到所选择的存储器位置。
例如,这样的OTP存储器控制器可以用于具有多个电源域的处理系统中。例如,在各种实施例中,这样的处理系统包括电源电路,该电源电路被配置为接收输入电压并且提供第一电源电压和第二电源电压,其中电源电路被配置为当低功率控制信号被解除断言时,选择性地启用第一电源电压并且当低功率控制信号被断言时禁用第一电源电压。
在各种实施例中,处理系统的第一子电路被配置为由第一电源电压供电。具体地,第一子电路包括OTP存储器区域和OTP存储器控制器。在各种实施例中,第一子电路还包括电源监测电路、数字处理电路和至少第一资源,电源监测电路被配置为当第一电源电压超过给定阈值电压时断言预加载开始信号,至少第一资源连接到数字处理电路并且被布置为从OTP存储器接收第一配置数据。例如,为此目的,处理系统可以包括硬件配置电路,和/或配置数据可以经由数字处理电路来读取。在各种实施例中,第一子电路还包括被配置为响应于预加载结束信号而启动数字处理电路的复位管理电路。
在各种实施例中,处理系统还包括被配置为由第二电源电压供电的第二子电路。在各种实施例中,第二子电路包括被配置为生成低功率控制信号的电源管理电路,其中电源管理电路被配置为响应于从数字处理电路接收的请求而断言低功率控制信号,并且响应于事件信号而解除断言低功率控制信号。在各种实施例中,第二子电路还包括连接到数字处理电路并且被布置为接收第二配置数据的至少一个第二资源。
具体地,在各种实施例中,OTP存储器控制器被配置为将OTP存储器的被配置为存储第一配置数据的第一存储器插槽映射到第一影子寄存器并且将OTP存储器的被配置为存储第二配置数据的第二存储器插槽映射到第二影子寄存器。具体地,在这种情况下,响应于处理系统的接通,处理系统经由电源监测电路断言预加载开始信号和设置预加载使能信号,以便将第一配置数据从第一存储器插槽预加载到第一影子寄存器。接下来,响应于预加载结束信号,处理系统从第一影子寄存器向第一资源传输第一配置数据并且从第二影子寄存器向第二资源传输第二配置数据。
在各种实施例中,数字处理电路然后向电源管理电路发送请求以便断言低功率控制信号,从而禁用第一电源电压并且关断第一子电路。响应于事件信号,电源管理电路再次解除断言低功率控制信号,从而启用第一电源电压并且接通第一子电路。
在各种实施例中,响应于接通第一子电路,处理系统经由电源监测电路再次断言预加载开始信号。然而,这一次,处理系统设置预加载使能信号,以便将第一配置数据从第一存储器插槽预加载到第一影子寄存器并且禁用第二配置数据从第二存储器插槽到第二影子寄存器的预加载。接下来,响应于预加载结束信号,处理系统从第一影子寄存器向第一资源传输第一配置数据并且禁止第二配置数据从第二影子寄存器到第二资源的传输。
因此,当从低功率模式返回时,仅由第一子电路使用的配置数据可以由OTP存储器控制器预加载,并且处理系统可以仅传输第一子电路的配置数据。
例如,在各种实施例中,处理系统(例如,第二子电路)出于这个目的而包括被配置为生成预加载使能信号的电路。例如,该电路可以根据从第一资源接收的第一信号和/或从第二资源接收的第二信号来生成预加载使能信号。例如,第一信号可以指示第一资源是否已经存储第一配置数据,并且第二信号可以指示第二资源是否已经存储第二配置数据。
另外地或备选地,该电路可以从可选配置电路接收第三信号,该可选配置电路被配置为从第一影子寄存器向第一资源传输第一配置数据并且从第二影子寄存器向第二资源传输第二配置数据。例如,第三信号可以指示第一配置数据是否已经从第一影子寄存器传输到第一资源和/或第二配置数据是否已经从第二影子寄存器传输到第二资源。
另外地或备选地,该电路可以从数字处理电路接收第四信号,其中第四信号指示是否需要预加载第一配置数据和/或是否需要预加载第二配置数据。
附图说明
现在将参考附图描述本公开的实施例,附图纯粹通过非限制性示例的方式提供,在附图中:
图1示出了电子系统的示例;
图2示出了处理系统的示例;
图3示出了OTP存储器的示例;
图4示出了处理系统的实施例;
图5示出了图4的处理系统的操作的实施例;
图6示出了根据本公开的OTP存储器的实施例;
图7-图10示出了图6的OTP存储器的操作的实施例;以及
图11示出了根据本公开的处理系统的实施例。
具体实施方式
在以下描述中,给出了很多具体细节,以提供对实施例的全面理解。实施例可以在没有一个或多个具体细节的情况下实践,或者使用其它方法、组件、材料等实践。在其它情况下,公知的结构、材料或操作没有详细示出或描述,以避免混淆实施例的各方面。
本说明书中对“一个实施例”或“实施例”的引用是指结合该实施例而描述的特定特征、结构或特性被包括在至少一个实施例中。因此,短语“在一个实施例中”或“在实施例中”在本说明书的各个地方出现的不一定都是指同一实施例。此外,在一个或多个实施例中,特定特征、结构或特性可以以任何合适的方式组合。
本文中提供的标题仅为方便,不解释实施例的范围或含义。
在以下图4至图11中,已经参考图1至图3描述的部件、元件或组件由先前在这样的图中使用的相同附图标记来表示;以下将不重复对这样的先前描述的元件的描述,以免覆盖本详细描述。
如前所述,本公开的各种实施例提供了用于管理OTP存储器的解决方案。关于OTP存储器和包括这样的OTP存储器的处理系统的一般描述,可以参考图1至图3的先前描述。
图4示出了根据本公开的处理系统10a的实施例。
如前所述,本公开具体涉及适于至少部分关断的处理系统10a。例如,出于这个目的,处理系统10a通常包括两个子电路:
-第一子电路321,其包括要关断的电路;以及
-第二子电路322,其包括保持启用/接通的电路,即所谓的常开域。
在所考虑的实施例中,处理系统10a因此包括电源电路117,电源电路117被配置为生成用于第一子电路321的第一电源电压VDD1和用于第一子电路322的第二电源电压VDD2。例如,出于这个目的,电源电路117可以接收输入电压Vin,诸如由电池提供的电压。具体地,一旦电源电压Vin被接收到,电源电路117就生成电源电压VDD2。例如,电压VDD2可以对应于电压Vin。然而,电源电路117也可以包括电压源,诸如电子转换器,该电压源被配置为基于输入电压Vin生成经调节的电压VDD2。此外,电源电路117被配置为生成电压VDD1。然而,在这种情况下,电源电路117被配置为仅当信号POFF具有给定逻辑电平/被解除断言时,例如,当信号POFF被设置为低时,才提供电压VDD1。例如,在最简单的情况下,电压VDD1可以经由电子开关来提供,该电子开关连接到电压VDD2并且当信号POFF具有给定逻辑电平/被解除断言时闭合。通常,电压VDD1和VDD2可以具有相同值或不同值,例如,电压VDD2的值可以小于电压VDD1的值。
例如,在所考虑的实施例中,第一子电路321包括处理核心102a、一个或多个资源1061、OTP存储器120a和硬件配置电路108a。关于这些电路之间的连接的更详细描述,可以参考图2和图3的描述。在这点上,通信系统114/114b和/或存储器控制器100可以被包括在子电路321或子电路322中。
具体地,在所考虑的实施例中,第一子电路321还包括电源监测电路115,该电源监测电路115被配置为当电源电压VDD1超过给定阈值时,即,当第一子电路321被供电时,断言信号POK。响应于该信号POK,OTP存储器120a预加载OTP存储器120a的影子寄存器1208,并且一旦预加载了影子寄存器1208,OTP存储器120a就断言信号OTP_DONE(另请参见图3的描述)。
在所考虑的实施例中,信号POK和OTP_DONE被提供给复位管理电路116。具体地,在所考虑的实施例中,复位管理电路116被配置为:
-响应于信号POK,通过断言提供给处理核心102a的复位信号RST并且可能断言用于复位第一子电路321的一个或多个其它电路(诸如一个或多个资源/外围设备1061)的寄存器的一个或
多个另外的复位信号来开启复位阶段;
-响应于信号OTP_DONE,通过断言信号SCFG来开启配置阶段,其中硬件配置电路108a响应于信号SCFG而从OTP存储器120中读取一个或多个数据;以及
-一旦硬件配置电路108a从OTP存储器120中读取了数据,例如,响应于由硬件配置电路108提供的信号ECFG(图4中未示出),通过解除断言提供给处理核心102a的复位信号RST来开启软件运行时阶段。
因此,为了实现低功率模式,第二子电路322可以包括电源管理电路118。具体地,在所考虑的实施例中,电源管理电路118被配置为响应于从第一子电路321接收的请求(例如,从处理核心102a接收的请求)而断言信号POFF。例如,出于这个目的,电源管理电路118可以连接到通信通道114或114b,由此处理核心102a可以通过经由软件指令向电源管理电路118发送(写入)请求来请求关断。因此,一旦接收到请求,并且信号POFF被断言,电源电路117就禁用/关断第一子电路321的电压VDD1,从而关断相应电路。
相反,为了解除断言信号POFF,电源管理电路118可以监测指示给定事件的一个或多个信号,诸如一个或多个触发信号,例如:
-经由处理系统10a的端子(诸如相应集成电路的引脚或焊盘)
接收的第一触发/事件信号TRIG1;和/或
-由子电路322中的资源/外围设备(诸如定时器电路)提供的第二触发/事件信号TRIG2,诸如看门狗定时器、通信接口、模拟比较器等。
因此,在各种实施例中,处理系统10a的每个资源/外围设备106可以在子电路321或子电路322中。在各种实施例中,处理系统10a可以被配置为允许资源/外围设备106中的一个或多个选择相应资源/外围设备106是属于第一子电路321(并且因此关断)还是属于第二子电路322(并且因此可以用于生成触发信号TRIG2)。
因此,响应于事件/触发信号TRIG1和/或TRIG2,电源管理电路118解除断言信号POFF,由此电源电路117再次接通电源电压VDD1,由此第一子电路321再次启动,从而将数据预加载到影子寄存器1208并且执行复位、配置和软件运行阶段。
因此,如图5所示,一旦处理系统10a(即,子电路321和322)接通,OTP存储器120a仅在用于预加载影子寄存器1208的时间TR之后断言信号OTP_DONE。一旦电源管理电路118断言信号POFF,则第一子电路321关断。然而,当解除断言信号POFF时(响应于事件),电源监测电路115再次断言信号POK,并且OTP存储器120仅在用于预加载影子寄存器1208的时间TR之后才再次断言信号OTP_DONE。因此,该操作对于第一子电路321的每个接通操作进行重复。
然而,如图4所示,实际上,硬件配置电路108a可以向第一子电路321内的电路提供第一组配置数据CD1,诸如一个或多个资源1061。此外,硬件配置电路108a可以向第二子电路322内的电路提供第二组配置数据CD2,诸如一个或多个资源1062。然而,第二子电路322没有关断,由此相应电路不会丢失配置数据CD2。此外,第一子电路321内的电路也可以不总是使用所有配置数据,例如,在不使用密码协处理器的情况下。
因此,在各种实施例中,OTP存储器120a允许指定应当响应于信号POK而将哪些数据从OTP存储器区域1200预加载到影子寄存器1208。
图6示出了根据本公开的OTP存储器120a的实施例。
在所考虑的实施例中,OTP存储器120a包括:
-具有给定数目N个存储器插槽(即,插槽OTP1、……、OTPN)的存储器区域1200;
-给定数目K个影子寄存器SREG,即寄存器SREG1、……、SREGK,其中数目K小于数目N;
-(共享)寄存器1206;
-通信接口1202,诸如用于将OTP存储器120a连接到外围总线114b的通信接口;
-控制电路1204a。
在各种实施例中,OTP存储器120a还可以包括可选接口1210和/或1212。
具体地,如图6示意性地所示,OTP存储器区域1200的每个存储器插槽具有给定数目M个比特,例如,用相应熔断器或类似的一次性可编程存储元件实现的。相反,每个影子寄存器SREG(类似地寄存器1206)具有给定数目P个比特。通常,数目P可以对应于数目M,即,给定OTP存储器插槽的所有比特被传输到相应影子寄存器SREG,或者数目P可以小于数目M。例如,后一种解决方案通常是优选的,因为存储到存储器区域1200的给定存储器插槽的比特可以包括附加错误检测和可选的校正数据。例如,数据可以以冗余方式存储到存储器区域1200。例如,给定数据字的每个比特可以被多次存储到相应存储器插槽。例如,32个比特的数据实际上可以存储到具有128个比特的存储器插槽,其中每个比特存储到四个相应OTP存储元件。然而,也可以使用更复杂的纠错码(ECC),其中一个或多个ECC比特被添加到数据中,或者数据以编码形式存储。因此,在各种实施例中,控制电路1204a可以被配置为通过以下方式从给定存储器插槽向影子寄存器SREG(或类似地向共享寄存器1206)传输数据:
-从存储器插槽中读取M个比特,
-从从存储器插槽中读取的M个比特中提取P个比特的数据,例如,通过使用纠错码或解码M个比特,以及
-将所提取的P个比特(对应于实际数据)存储到相应影子寄存器SREG(或共享寄存器1206)。
因此,在控制电路1204a也被配置为向OTP存储器区域1200写入数据的情况下,例如,通过经由通信接口1202(或OTP存储器120a的另一通信接口)将相应数据存储到影子寄存器SREG或共享寄存器1206,控制电路可以被配置为通过以下方式向给定存储器插槽传输相应数据:
-从寄存器中读取P个比特,
-通过对P个比特的数据进行编码或将ECC比特添加到P个比特
来生成M个比特;以及
-将所述P个比特存储到相应存储器插槽。
例如,当P个比特的数据中的每个比特都应当是个体可编程的(比特可编程的)时,M个比特优选地针对P个比特中的每个比特包括冗余比特,诸如至少两个另外的冗余比特。相反,在仅可以写入完整字(字可编程)的情况下,也可以使用其它ECC方案。
除了管理经由OTP存储器120a的(多个)接口接收的读取和写入请求之外,控制电路1204a还管理预加载机制。具体地,在所考虑的实施例中,OTP存储器120a、特别是OTP存储器120a的控制电路1204a出于这个目的而接收信号POK和影子寄存器选择信号SSA。
具体地,在所考虑的实施例中,信号SSA指示K个影子寄存器SREG到存储器区域1200的N个存储器插槽的映射。
例如,图7示出了一个实施例,其中信号SSA具有N个比特,其中每个比特与给定存储器插槽唯一关联,并且指示相应存储器插槽的数据是否应当被传输到相应影子寄存器。
例如,在图7中示出了十二个存储器插槽OTP1、……、OTP12和五个影子寄存器SREG1、……、SREG1。例如,在这种情况下,比特序列“001010011010”可以指示存储器插槽OTP2、OTP4、OTP5、OTP8和OTP10应当被传输。例如,在各种实施例中,影子寄存器SREG被顺序地分配给所选择的存储器插槽,即,控制电路1204a可以选择以下分配:
-影子寄存器REG1与存储器插槽OTP2相关联,
-影子寄存器REG2与存储器插槽OTP4相关联,
-影子寄存器REG3与存储器插槽OTP5相关联,
-影子寄存器REG4与存储器插槽OTP8相关联,并且
-影子寄存器REG5与存储器插槽OTP10相关联。
因此,在所考虑的实施例中,能够断言信号SSA的多达5个比特。
在所考虑的实施例中,控制电路1204a因此可以使用信号SSA来确定存储器插槽与影子寄存器之间的映射。例如,当接收到请求存储到给定存储器插槽的数据的读取请求时,控制电路1204a可以使用信号SSA来确定相应插槽的数据是否也存储到影子寄存器,并且:
-当信号SSA指示相应插槽的数据也存储到影子寄存器时,向影子寄存器传输所存储的数据,即,不执行对存储器区域1200的进一步读取操作;以及
-当信号SSA指示相应插槽的数据没有存储到影子寄存器时,向共享寄存器1206传输存储器插槽的数据,并且然后向共享寄存器1206传输所存储的数据。
因此,在所考虑的实施例中,通过经由信号SSA仅启用数据的预加载,可以减少预加载阶段的持续时间,当子电路321接通时,处理系统10a也预计会在下一操作间隔期间使用该数据。
然而,发明人已经观察到,单独使用信号SSA可以有若干缺点。例如,一方面,这表示处理系统10a的引导不需要的给定存储器插槽可以在稍后读取并且甚至多次读取,由此访问时间显著增加,因为相应存储器插槽的数据没有存储到相应影子寄存器。
此外,如前所述,影子寄存器中给定数据的位置也应当是固定的,例如,因为OTP存储器120a也可以直接提供一个或多个影子寄存器的数据。例如,影子寄存器可以被布置为存储以太网通信接口106的MAC地址,由此该影子寄存器直接连接到以太网通信接口106。在这种情况下,信号SSA也可以是在控制电路1204a的合成操作之前的静态信号,由此相应组合逻辑电路可以经由逻辑合成操作以优化方式实现。
因此,在各种实施例中,影子寄存器选择信号SSA被用作静态信号,并且因此也被标识为静态影子阵列信号。例如,基于应用,该信号可以被硬连线在处理系统10a内,或者可以是逻辑合成操作之前的静态信号,从而永久地指定影子寄存器1208到存储器区域1200的给定映射。相反,OTP存储器120a、特别是控制电路1204a被配置为接收另外的信号DSA,该信号DSA指定应响应于信号POK而预加载哪些影子寄存器1208,即,信号DSA动态地指定影子寄存器的预加载并且也被标识为动态影子阵列信号。
例如,图8示出了一个实施例,其中信号DSA具有N个比特,其中每个比特与给定存储器插槽唯一关联,并且指示从相应存储器插槽到相应影子寄存器的数据传输(如信号SSA所示)是否被启用。
例如,对于图8所示的示例性情况,信号SSA的比特序列“001010011010”可以再次指示存储器插槽OTP2、OTP4、OTP5、OTP8和OTP10被映射到相应影子寄存器SREG1-SREG5。此外,信号DSA的比特序列“001000010010”指示实际上只有存储器插槽OTP2、OTP5和OTP10应当被预加载。因此,在所考虑的实施例中,当影子寄存器SREG2和SREG4分别被映射(经由信号SSA)到存储器插槽OTP4和OTP8时,控制电路1204a不预加载这些影子寄存器,但是如果需要,控制电路1204a可以仅在对相应存储器插槽(OTP4或OTP8)的读取请求被接收到时才加载这些影子寄存器。
相反,图9示出了一个实施例,其中信号DSA具有K个比特,其中每个比特与给定影子寄存器SREG唯一关联,并且指示从相应存储器插槽到相应影子寄存器的数据传输(如信号SSA所示)是否被启用。
例如,对于图8所示的示例性情况,信号SSA的比特序列“001010011010”可以再次指示存储器插槽OTP2、OTP4、OTP5、OTP8和OTP10被映射到相应影子寄存器SREG1-SREG5。此外,信号DSA的比特序列“10101”指示实际上只有影子寄存器SREG1、SREG3和SREG5应当基于存储到存储器插槽OTP2、OTP5和OTP10的数据而被预加载(如信号SSA所示)。因此,同样,在这种情况下,影子寄存器SREG2和SREG4被分别映射(经由信号SSA)到存储器插槽OTP4和OTP8,并且控制电路1204a不预加载这些影子寄存器,但是如果需要,控制电路1204a可以仅在对相应存储器插槽(OTP4或OTP8)的读取请求被接收到时才加载这些影子寄存器。
因此,如图10所示,一旦处理系统10a(即,子电路321和322两者)接通,OTP存储器120a在用于预加载影子寄存器1208的时间TR1之后断言信号OTP_DONE,这取决于预加载的影子寄存器1208的数目。例如,一旦处理系统接通,信号DSA可以对应于信号SSA,由此所有影子寄存器1208被预加载,并且这些数据的至少一部分被传输到处理系统10a的其它电路。一旦电源管理电路118断言信号POFF,则第一子电路关断。当解除断言信号POFF时(响应于事件),电源监测电路115再次断言信号POK。然而,这一次,信号DSA可以具有较少的比特被断言,由此较少数据被预加载并且OTP存储器120在用于预加载较少影子寄存器1208的时间TR2之后断言信号OTP_DONE。
在这点上,图11示出了被配置为生成信号SSA和DSA的处理系统10a的一个实施例。
具体地,如前所述,信号SSA可以是硬连线的,或者可以只是用于逻辑合成操作的静态信号,例如,在VHDL或Verilog模型的上下文中。备选地,在各种实施例中,信号SSA可以根据存储到非易失性存储器的数据来确定。例如,在各种实施例中,控制电路1204a被配置为基于OTP存储器区域1200的一个或多个存储器插槽的内容来确定信号SSA。
相反,在所考虑的实施例中,信号DSA由电路122提供。
具体地,如前所述,存储到OTP存储器120a的影子寄存器的数据可以由处理核心102a和/或硬件配置电路108a读取。
例如,如图11示意性地所示,硬件配置电路108a可以向子电路321中的一个或多个资源1061传输配置数据CD1并且向子电路322中的一个或多个资源1062传输配置数据CD2。在这种情况下,当仅子电路321关断时向资源1062重新传输配置数据CD2可能是无用的。
因此,在各种实施例中,电路122可以包括用于信号DSA的一个或多个比特的相应寄存器(或相应的一组冗余寄存器),并且硬件配置电路108a可以被配置为解除断言与配置数据CD2相关联的比特,由此OTP存储器120a的相应存储器插槽在子电路321的下一次重新激活时不被预加载。相反,当整个处理系统关断时,电路122的寄存器也将丢失所存储的数据,由此信号DSA被复位。例如,在各种实施例中,电路122被配置为一旦被复位就提供与信号SSA相同的比特序列作为信号DSA。例如,出于这个目的,信号SSA也可以被提供给电路122。
类似地,处理核心102a可以被配置为对电路122的寄存器中的一个或多个进行编程,以便设置信号DSA。例如,出于这个目的,电路122可以例如经由通信系统114b连接到通信系统114。
另外地或备选地,如图11示意性地所示,在各种实施例中,电路122可以被配置为根据从一个或多个资源106、特别是资源1062接收的信号来确定信号DSA的比特的逻辑电平的至少一部分。例如,资源106中的一个或多个可以被配置为提供指示相应资源是否仍然存储到相应配置数据的信号。因此,在这种情况下,一旦子电路321被重新激活,资源1062可以指示其仍然具有有效配置数据,而资源1061可以指示其不具有有效配置数据。
通常,上述解决方案也可以组合使用。例如,如图11示意性地所示,电路122可以被配置为基于由资源106提供的信号或经由配置电路108a而编程的信号来断言或解除断言相应标志PL,其中该信号指示相应配置数据是有效的或无效的。相反,处理核心102a可以被配置为对用于指示用于相应配置数据的预加载机制是被启用还是被禁用的标志PE进行编程。因此,在这种情况下,电路122可以被配置为:
-当标志PL指示相应配置数据是无效的并且标志PE指示相应配置数据的预加载机制被启用时,断言信号DSA的相应比特;以及
-当标志PL指示相应配置数据是有效的或者标志PE指示相应配置数据的预加载机制被禁用时,解除断言信号DSA的相应比特。
例如,以这种方式,当处理系统10a接通时,信号SSA可以指示包括MAC地址的存储器插槽应当被预加载到给定影子寄存器1208。因此,响应于信号POK,控制电路1204a使用信号SSA和DSA来预加载影子寄存器。具体地,由于信号DSA具有其复位值的这个事实,控制电路1204a将MAC地址从存储器区域1200预加载到相应影子寄存器1208。一旦完成了影子寄存器的预加载,控制电路1204a就断言信号OTP_DONE。
在硬件配置电路108a被提供/使用的情况下,复位管理电路116然后可以断言信号SCFG。响应于该信号,硬件配置电路108a从OTP存储器中读取MAC地址,并且将MAC地址传输到处理系统10a的子电路322内的以太网通信接口106。此外,硬件配置电路108a可以对电路122中的相应标志进行编程。
备选地,影子寄存器1208也可以直接连接到以太网通信接口106。在这种情况下,以太网通信接口106可以直接向电路122发信号通知MAC地址是有效的。
因此,当处理系统10a激活低功率模式时,其中子电路321关断,以太网通信接口106将保持MAC地址。因此,一旦子电路321再次接通,信号SSA再次指示包括MAC地址的存储器插槽应当被预加载到相同影子寄存器1208。因此,响应于信号POK,控制电路1204a使用信号SSA和DSA来预加载影子寄存器。具体地,这一次,与包括MAC地址的存储器插槽相关联的比特被解除断言,由此,控制电路1204a省略MAC地址从存储器区域1200到相应影子寄存器1208的预加载。一旦完成了影子寄存器的预加载,控制电路1204a再次断言信号OTP_DONE。
在硬件配置电路108a被提供/使用的情况下,复位管理电路116可以再次断言信号SCFG。如图11所示,在这种情况下,信号DSA或另一类似信号也被提供给硬件配置电路108a。以这种方式,响应于信号POK,硬件配置电路108a也省略从OTP存储器中对MAC地址的读取。
备选地,当影子寄存器1208直接连接到以太网通信接口106时,以太网通信接口106可以简单地不向影子寄存器请求数据,因为MAC地址仍然有效。
当然,在不影响本发明原理的情况下,结构和实施例的细节可以相对于本文中纯粹通过示例的方式描述和说明的内容有很大的变化,而不会因此脱离如随后的权利要求所限定的本发明的范围。例如,尽管在先前的描述中已经使用了包括微处理器的软件可编程处理核心,但是也可以使用任何其它的数字处理核心。
Claims (18)
1.一种一次性可编程OTP存储器控制器,包括:
数据寄存器;
给定数目K个影子寄存器,其中所述数目K小于OTP存储器区域的存储器插槽的给定数目N;
通信接口,被配置为接收请求给定存储器插槽的数据的读取请求;以及
控制电路,被配置为接收预加载开始信号和影子寄存器预加载使能信号,其中所述控制电路被配置为管理预加载阶段和数据读取阶段,
其中响应于所述预加载开始信号,所述控制电路被配置为通过以下方式执行所述预加载阶段:
确定所述给定数目K个影子寄存器与所述给定数目N个存储器插槽之间的映射,
对于所述影子寄存器中的每个影子寄存器,根据所述影子寄存器预加载使能信号来确定相应影子寄存器是否是可预加载的,
响应于确定影子寄存器是可预加载的,从被映射到所述影子寄存器的所述存储器插槽向所述相应影子寄存器传输数据,以及
一旦所述影子寄存器基于所述影子寄存器预加载使能信号被预加载,断言预加载结束信号并且开启所述数据读取阶段,并且
其中所述控制电路被配置为通过以下方式执行所述数据读取阶段:
选择在所述读取请求中指示的相应存储器位置,
确定所选择的存储器位置是否被映射到影子寄存器,
响应于确定所选择的存储器位置被映射到所述影子寄存器,选择被映射到所选择的存储器位置的所述影子寄存器并且确定所选择的影子寄存器是否已经被预加载,
响应于确定所选择的影子寄存器已经被预加载,经由所述通信接口传输存储到所选择的影子寄存器的数据,
响应于确定所选择的影子寄存器尚未被预加载,从所选择的存储器插槽向所选择的影子寄存器传输数据,并且然后经由所述通信接口传输存储到所选择的影子寄存器的数据,以及
响应于确定所选择的存储器位置未被映射到影子寄存器,从所选择的存储器插槽向所述数据寄存器传输数据,并且然后经由所述通信接口传输存储到所述数据寄存器的数据。
2.根据权利要求1所述的OTP存储器控制器,其中所述控制电路被配置为:
接收影子寄存器映射信号;并且
根据所述影子寄存器映射信号来确定所述给定数目K个影子寄存器与所述给定数目N个存储器插槽之间的所述映射。
3.根据权利要求1所述的OTP存储器控制器,其中所述影子寄存器预加载使能信号包括所述给定数目N个比特,并且其中每个比特指示相应存储器插槽是否是可预加载的。
4.根据权利要求1所述的OTP存储器控制器,其中所述影子寄存器预加载使能信号包括所述给定数目K个比特,并且其中每个比特指示相应影子寄存器是否是可预加载的。
5.根据权利要求1所述的OTP存储器控制器,其中所述控制电路被配置为通过以下方式执行数据写入阶段:
经由所述通信接口接收写入请求,并且选择在所述写入请求中指示的所述相应存储器位置,其中所述写入请求包括要被存储到所选择的存储器位置的相应数据;
确定所选择的存储器位置是否被映射到影子寄存器;
响应于确定所选择的存储器位置被映射到影子寄存器,选择被映射到所选择的存储器位置的所述影子寄存器,将要被存储的所述数据存储到所选择的影子寄存器,并且将存储到所选择的影子寄存器的所述数据编程到所选择的存储器位置;以及
响应于确定所选择的存储器位置未被映射到影子寄存器,将要被存储的所述数据存储到所述数据寄存器,并且将存储到所述数据寄存器的所述数据编程到所选择的存储器位置。
6.一种处理系统,包括:
电源电路,被配置为接收输入电压并且提供第一电源电压和第二电源电压,其中所述电源电路被配置为:当低功率控制信号被解除断言时选择性地启用所述第一电源电压,以及当所述低功率控制信号被断言时禁用所述第一电源电压;
第一子电路,被配置为接收所述第一电源电压,其中所述第一子电路包括:
OTP存储器区域,包括给定数目N个存储器插槽;和
根据权利要求1所述的OTP存储器控制器,其中所述OTP存储器控制器被配置为管理所述OTP存储器区域;
第二子电路,被配置为接收所述第二电源电压。
7.根据权利要求6所述的处理系统,还包括电源监测电路,所述电源监测电路被配置为当所述第一电源电压超过给定阈值电压时断言所述预加载开始信号。
8.根据权利要求7所述的处理系统,还包括:
数字处理电路;
第一资源,连接到所述数字处理电路并且被配置为接收第一配置数据;以及
复位管理电路,被配置为响应于所述预加载结束信号而启动所述数字处理电路。
9.根据权利要求8所述的处理系统,其中所述第二子电路包括:
电源管理电路,被配置为生成所述低功率控制信号,以及
第二资源,被连接到所述数字处理电路并且被配置为接收第二配置数据。
10.根据权利要求9所述的处理系统,其中所述电源管理电路被配置为:
响应于从所述数字处理电路接收的请求而断言所述低功率控制信号,以及
响应于事件信号而解除断言所述低功率控制信号。
11.根据权利要求6所述的处理系统,其中所述OTP存储器控制器被配置为:将存储第一配置数据的所述OTP存储器的第一存储器插槽映射到第一影子寄存器,并且将存储第二配置数据的所述OTP存储器的第二存储器插槽映射到第二影子寄存器。
12.根据权利要求6所述的处理系统,其中所述处理系统被配置为:
响应于接通所述处理系统,经由所述电源监测电路断言所述预加载开始信号和设置所述预加载使能信号,以便将第一配置数据从第一存储器插槽预加载到第一影子寄存器并且将第二配置数据从第二存储器插槽预加载到第二影子寄存器,以及响应于所述预加载结束信号,从所述第一影子寄存器向第一资源传输所述第一配置数据并且从所述第二影子寄存器向所述第二资源传输所述第二配置数据;
经由数字处理电路向电源管理电路发送请求以便断言所述低功率控制信号,从而禁用所述第一电源电压并且关断所述第一子电路;
响应于事件信号,经由所述电源管理电路解除断言所述低功率控制信号,从而启用所述第一电源电压并且接通所述第一子电路;以及
响应于接通所述第一子电路,经由所述电源监测电路断言所述预加载开始信号和设置所述预加载使能信号,以便将所述第一配置数据从所述第一存储器插槽预加载到所述第一影子寄存器并且禁止所述第二配置数据从所述第二存储器插槽到所述第二影子寄存器的所述预加载,以及响应于所述预加载结束信号,从所述第一影子寄存器向所述第一资源传输所述第一配置数据并且禁止所述第二配置数据从所述第二影子寄存器到所述第二资源的所述传输。
13.根据权利要求6所述的处理系统,其中所述处理系统被配置为设置所述影子寄存器映射信号,以便将存储第一配置数据的所述OTP存储器的第一存储器插槽映射到第一影子寄存器并且将存储第二配置数据的所述OTP存储器的第二存储器插槽映射到第二影子寄存器。
14.根据权利要求6所述的处理系统,还包括被配置为生成所述预加载使能信号的电路。
15.根据权利要求14所述的处理系统,其中所述电路被配置为根据以下中的至少一项来生成所述预加载使能信号:
从第一资源接收的第一信号,其中所述第一信号指示所述第一资源是否已经存储第一配置数据;
从第二资源接收的第二信号,其中所述第二信号指示所述第二资源是否已经存储第二配置数据;
从配置电路接收的第三信号,所述配置电路被配置为从第一影子寄存器向所述第一资源传输第一配置数据并且从第二影子寄存器向所述第二资源传输所述第二配置数据,其中所述第三信号指示所述第一配置数据是否已经从所述第一影子寄存器传输到所述第一资源和/或所述第二配置数据是否已经从所述第二影子寄存器传输到所述第二资源;或者
从数字处理电路接收的第四信号,其中所述第四信号指示是否需要预加载所述第一配置数据和/或是否需要预加载所述第二配置数据。
16.根据权利要求14所述的处理系统,其中所述第二子电路包括所述电路。
17.一种用于操作处理系统的方法,所述方法包括:
接通处理系统;
响应于接通所述处理系统,由所述处理系统的电源监测电路断言预加载开始信号并且设置预加载使能信号,以便将第一配置数据从第一存储器插槽预加载到第一影子寄存器并且将第二配置数据从第二存储器插槽预加载到第二影子寄存器;
响应于预加载结束信号,从所述第一影子寄存器向第一资源传输所述第一配置数据并且从所述第二影子寄存器向第二资源传输所述第二配置数据;
由所述处理系统的数字处理电路向电源管理电路发送请求以便断言低功率控制信号,从而禁用第一电源电压并且关断第一子电路;
响应于事件信号,由所述电源管理电路解除断言所述低功率控制信号,从而启用所述第一电源电压并且接通所述第一子电路;以及
响应于接通所述第一子电路,经由所述电源监测电路断言所述预加载开始信号和设置所述预加载使能信号,以便将所述第一配置数据从所述第一存储器插槽预加载到所述第一影子寄存器并且禁止所述第二配置数据从所述第二存储器插槽到所述第二影子寄存器的所述预加载,以及响应于所述预加载结束信号,从所述第一影子寄存器向所述第一资源传输所述第一配置数据并且禁止所述第二配置数据从所述第二影子寄存器到所述第二资源的所述传输。
18.一种一次性可编程OTP存储器控制器,包括:
数据寄存器;
给定数目K个影子寄存器,其中所述数目K小于OTP存储器区域的存储器插槽的给定数目N;
通信接口,被配置为接收请求给定存储器插槽的数据的读取请求;以及
控制电路,被配置为接收预加载开始信号和影子寄存器预加载使能信号,其中所述控制电路被配置为管理预加载阶段和数据读取阶段,
其中响应于所述预加载开始信号,所述控制电路被配置为通过以下方式执行所述预加载阶段:
确定所述给定数目K个影子寄存器与所述给定数目N个存储器插槽之间的映射,
对于所述影子寄存器中的每个影子寄存器,根据所述影子寄存器预加载使能信号来确定相应影子寄存器是否是可预加载的,
响应于确定影子寄存器是可预加载的,从映射到所述影子寄存器的所述存储器插槽向所述相应影子寄存器传输数据,以及
一旦所述影子寄存器基于所述影子寄存器预加载使能信号被预加载,断言预加载结束信号并且开启所述数据读取阶段。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IT102022000012764 | 2022-06-16 | ||
US18/325,519 US20230409320A1 (en) | 2022-06-16 | 2023-05-30 | One-time programmable memory controller, related processing system, integrated circuit and method |
US18/325,519 | 2023-05-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117253518A true CN117253518A (zh) | 2023-12-19 |
Family
ID=89125383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310708723.6A Pending CN117253518A (zh) | 2022-06-16 | 2023-06-15 | 一次性可编程存储器控制器、相关处理系统、集成电路和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117253518A (zh) |
-
2023
- 2023-06-15 CN CN202310708723.6A patent/CN117253518A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106126447B (zh) | 控制存储装置的方法、存储器模块和存储系统 | |
US9778875B2 (en) | Multi-partitioning of memories | |
US7171526B2 (en) | Memory controller useable in a data processing system | |
KR101989775B1 (ko) | 주 메모리 시스템을 통해 코프로세서와 입력/출력 장치를 인터페이싱하는 시스템 및 방법 | |
EP2761472B1 (en) | Memory channel that supports near memory and far memory access | |
US9304943B2 (en) | Processor system and control method thereof | |
US11856058B2 (en) | Peer to peer transfer of proof of space plots to or from solid state drives | |
US11775188B2 (en) | Communications to reclaim storage space occupied by proof of space plots in solid state drives | |
US11960756B2 (en) | Management of storage space in solid state drives to support proof of space activities | |
US11977742B2 (en) | Solid state drives configurable to use storage spaces of remote devices in activities involving proof of space | |
US10949570B2 (en) | Processing system, related integrated circuit and method | |
CN115221084A (zh) | 处理系统、相关集成电路、设备和方法 | |
CN117253518A (zh) | 一次性可编程存储器控制器、相关处理系统、集成电路和方法 | |
US20230409320A1 (en) | One-time programmable memory controller, related processing system, integrated circuit and method | |
CN116560902A (zh) | 处理系统、相关集成电路和方法 | |
CN116893930A (zh) | 处理系统、相关集成电路以及设备和方法 | |
CN115129511A (zh) | 处理系统、相关集成电路、设备和方法 | |
US10522201B2 (en) | Methods and systems for serial memory device control | |
US12068057B2 (en) | Processing system, related integrated circuit, device and method | |
US20240233780A1 (en) | Storage device for idle power operation and method therefor | |
EP4296850B1 (en) | Processing system, related integrated circuit, device and method | |
US20230283386A1 (en) | Digital switching activity sensing | |
US20240160598A1 (en) | Processing system, related integrated circuit, device and method | |
CN116893936A (zh) | 处理系统、相关集成电路、设备和方法 | |
CN116610615A (zh) | 处理系统、相关集成电路、设备和方法 |
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 |