CN206178816U - 一种高性价比的SoC架构 - Google Patents

一种高性价比的SoC架构 Download PDF

Info

Publication number
CN206178816U
CN206178816U CN201621238043.4U CN201621238043U CN206178816U CN 206178816 U CN206178816 U CN 206178816U CN 201621238043 U CN201621238043 U CN 201621238043U CN 206178816 U CN206178816 U CN 206178816U
Authority
CN
China
Prior art keywords
flash
cores
circuits
bank
buses
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.)
Withdrawn - After Issue
Application number
CN201621238043.4U
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.)
Nanjing Fire Zero Mdt Infotech Ltd
Original Assignee
Nanjing Fire Zero Mdt Infotech Ltd
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 Nanjing Fire Zero Mdt Infotech Ltd filed Critical Nanjing Fire Zero Mdt Infotech Ltd
Priority to CN201621238043.4U priority Critical patent/CN206178816U/zh
Application granted granted Critical
Publication of CN206178816U publication Critical patent/CN206178816U/zh
Withdrawn - After Issue legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本实用新型公开了一种高性价比的SoC架构,包括改进的8051核、flash核、模数转换器、实时钟、串口、SPI接口、通用IO口、通信收发器、数据存储器、I2C接口,所述模数转换器、实时钟、串口、SPI接口、通用IO口、I2C接口通过SFR总线或xmem总线与8051核电性连接,所述通信收发器通过SFR总线和xmem总线与8051核电性连接,所述数据存储器通过xmem总线与8051核电性连接,所述flash核通过flash信号线与flash存取控制电路电性连接,所述flash存取控制电路通过读写总线与8051核电性连接,所述flash存取控制电路支持程序烧录。本实用新型可以节省存储空间、提高速度,支持8051在flash中的bank操作,采用了改进的8051核,与标准8051指令集兼容,占用芯片面积小,减少了成本和风险,简化系统设计、减少功耗和成本。

Description

一种高性价比的SoC架构
技术领域
本实用新型涉及芯片架构技术领域,尤其涉及一种高性价比的SoC架构。
背景技术
现在很多商用芯片都在尽可能增加集成度,从而降低成本、提高可靠性。常常一个芯片就是一个小的片上系统(SoC)。其中的CPU核一般用于数据运算和/或事务处理。高性能的CPU核常常需要license费用,并且占的芯片面积也不小。而实际应用中,常常并不需要一味追求高性能——比如,有的应用没有过大的数据量,或者有额外的协处理器分担一部分运算。在保证一定性能的前提下,简单的CPU核,以及相应的系统架构,可以简化系统设计、减少功耗和成本。此外,丰富的应用是现在嵌入式终端面临的主要问题,这意味着大量的应用程序,即需要大的程序空间。而传统8051程序空间寻址仅为64k,在面对上述应用时捉襟见肘。
实用新型内容
本实用新型的目的是为了解决现有技术中存在的缺点,而提出的一种高性价比的SoC架构。
为了实现上述目的,本实用新型采用了如下技术方案:
一种高性价比的SoC架构,包括改进的8051核、flash核、模数转换器、实时钟、串口、SPI接口、通用IO口、通信收发器、数据存储器、I2C接口,所述模数转换器、实时钟、串口、SPI接口、通用IO口、I2C接口通过SFR总线或xmem总线与8051核电性连接,所述通信收发器通过SFR总线和xmem总线与8051核电性连接,所述数据存储器通过xmem总线与8051核电性连接,所述flash核通过flash信号线与flash存取控制电路电性连接,所述flash存取控制电路通过读写总线与8051核电性连接,所述flash存取控制电路支持程序烧录。
优选的,所述通信收发器包括配置寄存器、数据缓冲器,所述配置寄存器通过SFR总线与8051核电性连接,所述数据缓冲器通过通过xmem总线与8051核电性连接。
优选的,所述flash存取控制电路包括flash下载电路、flash只读电路、flash读写电路,所述flash下载电路与下载控制相连用于接收上位机数据,按页写入全部原始程序,所述flash只读电路与8051核相连作为程序空间的ROM来使用,所述flash读写电路通过8051总线与8051核相连用于部分更改flash内容,所述flash核分别与flash下载电路、flash只读电路、flash读写电路电性连接,其中所述flash只读电路与flash读写电路并联后与所述flash下载电路并联。
优选的,所述flash下载电路包括下载控制状态机、串口收发、串口波特率生成,所述串口波特率生成的输出端与串口收发的输入端连接,所述下载控制状态机、串口收发双向连接,所述下载控制状态机与flash信号双向连接,所述串口收发与串口信号双向连接。
优选的,所述flash读写电路部分更改flash内容通过在8051核的数据存储器中包含一块两用RAM,平时作为8051的数据存储器使用;当需要对flash的一部分进行改写时,就搬移一部分程序到此RAM,然后程序跳转到此RAM中运行,并对flash进行写操作;写完后跳转回flash继续运行。
优选的,所述改进的8051核支持bank电路,包括指令执行状态机、8051专用寄存器堆、8051输入输出控制接口和bank选择电路,所述指令执行状态机包括跳转后控制信号,所述8051专用寄存器堆内包括bank序号用于配置下次要跳入的bank的序号,所述跳转后控制信号、bank序号的输出端与bank选择电路的输入端连接,所述8051输入输出控制接口的输入端与flash核的输出端连接,所述8051输入输出控制接口、bank选择电路的输出端均与组合逻辑电路的输入端连接,所述组合逻辑电路将加bank后的地址发送给flash核。
改进的8051核是一个免费的改进过的8051IP核,它的绝大部分指令与标准8051兼容,同时将标准8051每个机器周期中的12个时钟周期缩减为4个,大大提高了执行速度。
模数转换器、实时钟、串口、SPI接口、通用IO口、I2C接口可以灵活的连接在SFR总线和xmem总线上,以达到在芯片中可剪裁的采用各种常见接口的目的。
随着工艺的进步,已经有很多成熟的flash IP core可以集成到芯片中,大大减少了板级设计的复杂度。另外,现在很多应用都要求能够在线更新应用程序,这需要硬件的支持。鉴于此,我们设计flash core的硬件控制电路,使之可以正常擦写、在线更新,而在系统正常运行时作为ROM使用——CPU直接从其中读取程序代码然后运行。
丰富的应用是现在嵌入式终端面临的主要问题,这意味着大量的应用程序,即需要大的程序空间。而传统8051程序空间寻址仅为64k,在面对上述应用时捉襟见肘。Bank操作可以将程序空间寻址范围扩展数倍。这需要软硬件两方面的支持。硬件上,我们修改了8051核中部分跳转指令的运行,再配合编译器,可以支持4个bank共128k的寻址空间。
本实用新型具有以下优点:
1.节省存储空间、提高速度:本系统增加了对片内flash的支持,上电后程序直接在flash中运行,而一般的系统是代码预先存在片外单独一块flash中,上电后先加载到片内code memory中再运行——这需要额外的代码空间和较长的上电启动时间;
2.支持8051在flash中的bank操作,从而支持更多的应用程序——可以支持到128k,256k甚至更大的存储空间,而传统的8051核心最大支持到64k字节的存储空间;
3.采用了改进的8051核,指令执行速度是标准8051的3倍(同样时钟的情况下);
4.与标准8051指令集兼容,这有利于软件的继承、开发和维护;
5.占用芯片面积小,减少了成本和风险:本方案中8051核对应的逻辑门数仅相当于1k个FPGA LE(四输入查找表逻辑单元),远小于业内常见的ARM核、MIPS核等收费内核;
6. 8051使用的是复杂指令集,相比精简指令集的CPU核(如ARM,MIPS),更容易节省代码空间。
附图说明
图1为传统以8051为核心的SoC架构示意图;
图2为本实用新型提出的一种高性价比的SoC架构的架构示意图;
图3为flash存取控制电路框图;
图4为flash三种操作模式的切换示意图;
图5为接口时序示意图;
图6为flash下载电路的框图;
图7为下载控制状态机模块的状态转换图;
图8为8051在flash中和在PD_ram中运行两种模式下的地址映射图;
图9为bank电路与地址映射示意图;
图10为bank_sel更新的时序示意图;
图11为bank切换举例示意图
具体实施方式
下面将结合本实用新型实施例中的附图,对本实用新型实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本实用新型一部分实施例,而不是全部的实施例。
参照图2,一种高性价比的SoC架构,包括改进的8051核、flash核、模数转换器、实时钟、串口、SPI接口、通用IO口、通信收发器、数据存储器、I2C接口,8051核是一个免费的改进过的8051IP核,其绝大部分指令与标准8051兼容,同时将标准8051每个机器周期中的12个时钟周期缩减为4个,大大提高了执行速度,所述模数转换器、实时钟、串口、SPI接口、通用IO口、I2C接口通过SFR总线或xmem总线与8051核电性连接,所述通信收发器通过SFR总线和xmem总线与8051核电性连接,所述数据存储器通过xmem总线与8051核电性连接,flash核通过flash信号线与flash存取控制电路电性连接,flash存取控制电路通过读写总线与8051核电性连接,flash存取控制电路支持程序烧录。通信收发器包括配置寄存器、数据缓冲器,所述配置寄存器通过SFR总线与8051核电性连接,所述数据缓冲器通过通过xmem总线与8051核电性连接。
参照图1,相比传统8051系统架构上的改进共4点,如下:
(1)改进的8051核;
(2)可剪裁的各种接口;
(3)对flash存储器的支持;
(4)对bank操作的支持;
本实施例中对flash的操作有三种需求:
(1)出厂时,要能烧写整个程序,即支持本地刷新(通过特定串口);
(2)系统运行中,要能更新一部分应用程序或数据,结合相应软件可以支持远程下载、更新;
(3)除了上述情况之外的系统正常运行过程中,要能作为程序空间被CPU读取指令。
针对这三种需求,flash要有三种互斥的操作模式,或者说是三种操作状态。由芯片的配置管脚和8051配置寄存器来实施切换。具体列表如下:
表1 flash操作模式
参照图3,为flash存取控制电路框图,flash存取控制电路包括flash下载电路、flash只读电路、flash读写电路,flash下载电路与下载控制相连用于接收上位机数据,按页写入全部原始程序,flash只读电路与8051核相连作为程序空间的ROM来使用,flash读写电路通过8051总线与8051核相连用于部分更改flash内容,flash核分别与flash下载电路、flash只读电路、flash读写电路电性连接,其中flash只读电路与flash读写电路并联后与flash下载电路并联。
参照图4,为flash三种操作模式的切换示意图,每种操作中,接口电路都要完成两件事情:一是生成符合flash时序要求的接口信号,二是完成该操作的流程控制。
1.接口时序的控制,本实施例中采用128kB的NOR Flash硬IP核,接口信号分类如下表所示:
表2接口信号分类
flash下载和读写模式都是主动发起对flash的操作,接口时序主要受控于接口电路本身,故而比较容易设计;而正常模式(flash作为程序空间只读)对flash的操作还取决于8051,这样就需要接口电路同时满足flash和8051的时序。因此,本实施例中以正常模式为代表介绍接口控制时序,图5为接口时序示意图,8051要求给出读使能和读地址后,flash能够在c3结束之前将数据放到DOUT上。如图5所示,在芯片系统时钟为20MHz时,这样的时序可以满足。
参照图6为flash下载电路的框图,flash下载电路包括下载控制状态机、串口收发、串口波特率生成,串口波特率生成的输出端与串口收发的输入端连接,下载控制状态机、串口收发双向连接,下载控制状态机与flash信号双向连接,串口收发与串口信号双向连接。下载模式用于flash的烧写,即通过专用串口将8051程序固化到flash中。这些程序在芯片切换到正常模式后将由8051读取并运行。
参照图7,串口每接收一个字节,就交由“下载控制状态机”去写入(同时串口接收下一个字节),在下一个字节接收到之前,当前的字节一定可以写入完毕。这样可以达到流水操作的效果,以提高效率;相对于“flash下载”模式中的全部擦写,部分擦写通常只会更改flash中的一小部分内容,大致有两种:一是远程下载的需要更新的部分程序,或者需要增加的新的应用程序,统称为程序的在线更新;二是运行中部分需要永久保存或半永久保存的数据,也可以存入。
由于该flash在擦写的同时,无法从其中读取内容,所以这时8051不能把flash当成rom来读取。解决的办法是先把一小部分程序搬移到一块ram(PD_ram)中,并让程序在其中运行,这样才可以对flash进行改写。
如图8所示,flash读写电路部分更改flash内容通过在8051核的数据存储器中包含一块两用RAM,平时作为8051的数据存储器使用;当需要对flash的一部分进行改写时,就搬移一部分程序到此RAM,然后程序跳转到此RAM中运行,并对flash进行写操作;写完后跳转回flash继续运行,8051在flash中和在PD_ram中运行,对应不同的地址映射。
其中,D_ram一直用作数据空间,而另有一小块PD_ram在正常模式下用作数据空间,在flash读写模式下用作程序空间。此时,PD_ram中的程序是在进入flash读写模式之前从flash中搬移过来的,主要完成flash的擦写功能。
要打断正常运行来进行flash擦写,需要如下步骤:
(1)将必要的程序段从flash中搬移到PD_ram中;
(2)搬完后会有一个跳转指令,此时硬件自动完成地址映射;
(3)将需要改动的flash页映射到8051数据空间的一段(固定地址窗口);
(4)将选定的flash页的内容拷贝到D_ram中,擦除选定的flash页;
(5)对D_ram中的拷贝做必要的改写,写回到flash中;
(6)写完后会有一个跳转指令,跳回flash中运行。
对于低数据率的嵌入式终端,常见的情况是数据存储需求小,而程序存储空间要求大,这种128kB的NOR Flash硬IP核就是针对这种情况的。传统8051程序空间的寻址为64k。为了扩展寻址空间,采用划分bank的方式,就可以扩展至128k,256k,乃至更多。这需要软硬件的支持:修改8051硬件,使相关的跳转指令能支持bank跳转;采用中继函数配合编译器实现bank跳转。
参照图9,改进的8051核支持bank电路,包括指令执行状态机、8051专用寄存器堆、8051输入输出控制接口和bank选择电路,指令执行状态机包括跳转后控制信号,8051专用寄存器堆内包括bank序号用于配置下次要跳入的bank的序号,跳转后控制信号、bank序号的输出端与bank选择电路的输入端连接,8051输入输出控制接口的输入端与flash核的输出端连接,8051输入输出控制接口、bank选择电路的输出端均与组合逻辑电路的输入端连接,组合逻辑电路将加bank后的地址发送给flash核。
时序如图10所示,本实施例中bank中代码的最小颗粒度是函数,并且在编译时必须经过中继函数,那么目前仅在函数返回指令(ret)运行时更新bank_sel信号即可。
参照图11,中继函数与编译器,Bank1中的函数func X要调用bank2中的函数funcY,在调用和返回过程中分别要经过中继函数B_disp和B_ret。这两个函数都位于bank0即root_bank中。中继函数完成两个功能:一是操作栈顶,选择跳往目标函数;二是通过寄存器“bank序号”保存原bank、设置新bank,该设置在跳转指令执行时实施bank切换。
以上,仅为本实用新型较佳的具体实施方式,但本实用新型的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本实用新型揭露的技术范围内,根据本实用新型的技术方案及其实用新型构思加以等同替换或改变,都应涵盖在本实用新型的保护范围之内。

Claims (6)

1.一种高性价比的SoC架构,其特征在于:包括改进的8051核、flash核、模数转换器、实时钟、串口、SPI接口、通用IO口、通信收发器、数据存储器、I2C接口,所述模数转换器、实时钟、串口、SPI接口、通用IO口、I2C接口通过SFR总线或xmem总线与8051核电性连接,所述通信收发器通过SFR总线和xmem总线与8051核电性连接,所述数据存储器通过xmem总线与8051核电性连接,所述flash核通过flash信号线与flash存取控制电路电性连接,所述flash存取控制电路通过读写总线与8051核电性连接,所述flash存取控制电路支持程序烧录。
2.根据权利要求1所述的一种高性价比的SoC架构,其特征在于:所述通信收发器包括配置寄存器、数据缓冲器,所述配置寄存器通过SFR总线与8051核电性连接,所述数据缓冲器通过通过xmem总线与8051核电性连接。
3.根据权利要求1所述的一种高性价比的SoC架构,其特征在于:所述flash存取控制电路包括flash下载电路、flash只读电路、flash读写电路,所述flash下载电路与下载控制相连用于接收上位机数据,按页写入全部原始程序,所述flash只读电路与8051核相连作为程序空间的ROM来使用,所述flash读写电路通过8051总线与8051核相连用于部分更改flash内容,所述flash核分别与flash下载电路、flash只读电路、flash读写电路电性连接,其中所述flash只读电路与flash读写电路并联后与所述flash下载电路并联。
4.根据权利要求3所述的一种高性价比的SoC架构,其特征在于:所述flash下载电路包括下载控制状态机、串口收发、串口波特率生成,所述串口波特率生成的输出端与串口收发的输入端连接,所述下载控制状态机、串口收发双向连接,所述下载控制状态机与flash信号双向连接,所述串口收发与串口信号双向连接。
5.根据权利要求3所述的一种高性价比的SoC架构,其特征在于:所述flash读写电路部分更改flash内容通过在8051核的数据存储器中包含一块两用RAM,平时作为8051的数据存储器使用;当需要对flash的一部分进行改写时,就搬移一部分程序到此RAM,然后程序跳转到此RAM中运行,并对flash进行写操作;写完后跳转回flash继续运行。
6.根据权利要求1所述的一种高性价比的SoC架构,其特征在于:所述改进的8051核支持bank电路,包括指令执行状态机、8051专用寄存器堆、8051输入输出控制接口和bank选择电路,所述指令执行状态机包括跳转后控制信号,所述8051专用寄存器堆内包括bank序号用于配置下次要跳入的bank的序号,所述跳转后控制信号、bank序号的输出端与bank选择电路的输入端连接,所述8051输入输出控制接口的输入端与flash核的输出端连接,所述8051输入输出控制接口、bank选择电路的输出端均与组合逻辑电路的输入端连接,所述组合逻辑电路将加bank后的地址发送给flash核。
CN201621238043.4U 2016-11-18 2016-11-18 一种高性价比的SoC架构 Withdrawn - After Issue CN206178816U (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201621238043.4U CN206178816U (zh) 2016-11-18 2016-11-18 一种高性价比的SoC架构

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201621238043.4U CN206178816U (zh) 2016-11-18 2016-11-18 一种高性价比的SoC架构

Publications (1)

Publication Number Publication Date
CN206178816U true CN206178816U (zh) 2017-05-17

Family

ID=58686296

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201621238043.4U Withdrawn - After Issue CN206178816U (zh) 2016-11-18 2016-11-18 一种高性价比的SoC架构

Country Status (1)

Country Link
CN (1) CN206178816U (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106445879A (zh) * 2016-11-18 2017-02-22 南京火零信息科技有限公司 一种高性价比的SoC架构

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106445879A (zh) * 2016-11-18 2017-02-22 南京火零信息科技有限公司 一种高性价比的SoC架构

Similar Documents

Publication Publication Date Title
US6588006B1 (en) Programmable ASIC
US5796981A (en) Method and apparatus for providing register compatibility between non-identical integrated circuits
US5812858A (en) Method and apparatus for providing register and interrupt compatibility between non-identical integrated circuits
US7873814B1 (en) Microcode based hardware translator to support a multitude of processors
CN101221541B (zh) 用于soc的可编程通信控制器
CN105468568B (zh) 高效的粗粒度可重构计算系统
JPS6338794B2 (zh)
CN104238957B (zh) 串行外围接口控制器、串行外围接口快闪存储器及其存取方法和存取控制方法
AU2278495A (en) Efficient addressing of large memories
NL7907768A (nl) Met hoge snelheid werkzaam digitaalcomputerstelsel.
KR20170141205A (ko) Dsp 엔진 및 향상된 컨텍스트 스위치 기능부를 구비한 중앙 처리 유닛
CN102508803A (zh) 一种矩阵转置存储控制器
CN104346132B (zh) 应用于智能卡虚拟机运行的控制装置及智能卡虚拟机
CN104679681A (zh) Ahb总线访问片上sram的高速桥装置及其工作方法
CN104409099B (zh) 基于FPGA的高速eMMC阵列控制器
CN106445879B (zh) 一种SoC装置
CN101313290B (zh) 对仅m×n位外围设备执行n位写入访问的系统和方法
US20040064599A1 (en) Configurable memory controller for advanced high performance bus system
CN206178816U (zh) 一种高性价比的SoC架构
CN103793263B (zh) 一种基于PowerPC处理器的DMA事务级建模方法
CN103914333B (zh) 基于片上网络互连的多核存储系统仿真器
CN106339327B (zh) 一种计算机系统及刀片式服务器机箱
CN107291655A (zh) 一种带APB总线接口的SoC自举IP电路
CN106571156B (zh) 一种高速读写ram的接口电路及方法
JP2001184212A (ja) トレース制御回路

Legal Events

Date Code Title Description
GR01 Patent grant
GR01 Patent grant
AV01 Patent right actively abandoned

Granted publication date: 20170517

Effective date of abandoning: 20180323

AV01 Patent right actively abandoned