一种片上系统的制作方法

文档序号:19906552发布日期:2020-02-11 14:34阅读:122来源:国知局
一种片上系统的制作方法

本发明的所公开实施例涉及片上系统设计领域,且更具体而言,涉及一种微控制单元与现场可编程门阵列的片上系统。



背景技术:

随着大数据、人工智能等技术的飞速发展,传统的mcu(microcontrollerunit,微控制单元)单片机在计算性能和扩展上越来越难以满足日益庞大、多样化的数据处理需求,借助由fpga(field-programmablegatearray,现场可编程门阵列)与mcu一起组成的片上系统来提升计算性能,已成为一个新的发展趋势。



技术实现要素:

根据本发明的实施例,本发明提出一种片上系统,以解决mcu单片机不可扩展、通用性差的缺点,提高了mcu的扩展性和通用性,降低了设计难度和成本。

为解决上述技术问题,本发明提供的一个技术方案为:提供一种片上系统,包括:微控制单元和现场可编程门阵列;其中,微控制单元包括系统总线;现场可编程门阵列包括:总线接口,与系统总线连接;至少一个外部设备,与总线接口连接。

其中,系统总线包括低速系统总线和/或高速系统总线;总线接口包括低速总线接口和/或高速总线接口;至少一个外部设备包括至少一个低速外部设备和/或至少一个高速外部设备;其中,低速总线接口与低速系统总线连接;高速总线接口与高速系统总线连接;至少一个低速外部设备与低速总线接口连接;至少一个高速外部设备与高速总线接口连接。

其中,低速总线接口包括:第一译码器,输入端与低速系统总线连接、第一输出端分别与至少一个低速外部设备连接,用于对微控制单元的地址存储空间进行分段,以将每个地址段映射到一个低速外部设备,以及用于根据微控制单元的地址信号生成控制信号;第一多路选择器,第一端与低速系统总线连接、第二端分别与至少一个低速外部设备连接、控制端与第一译码器的第二输出端连接,用于根据控制信号选择相应的低速外部设备。

其中,高速总线接口包括:第二译码器,输入端与高速系统总线连接、第一输出端分别与至少一个高速外部设备连接,用于对微控制单元的地址存储空间进行分段,以将每个地址段映射到一个高速外部设备,以及用于根据微控制单元的地址信号生成控制信号;第二多路选择器,第一端与高速系统总线连接、第二端分别与至少一个高速外部设备连接、控制端与第二译码器的第二输出端连接,用于根据控制信号选择相应的高速外部设备。

其中,微控制单元还包括:中断控制器,分别与至少一个外部设备连接,用于自至少一个外部设备接收中断请求,以响应并处理至少一个外部设备的中断请求。

其中,至少一个外部设备中的每个包括设备控制器和设备功能电路,其中设备控制器与总线接口连接,设备功能电路,与设备控制器连接,设备控制器用于将设备功能电路映射到微控制单元的地址存储空间。

其中,设备功能电路包括i2c功能电路、spi功能电路和以太网功能电路中的至少一个。

其中,设备控制器包括寄存器组,与系统总线连接,其中寄存器组被映射到微控制单元的地址存储空间。

其中,微控制单元还包括第一时钟端口和第一复位端口;现场可编程门阵列还包括第二时钟端口和第二复位端口;其中,第一时钟端口和第二时钟端口输入相同的时钟信号;第一复位端口和所述第二复位端口输入相同的复位信号。

其中,片上系统还包括:存储器,分别与微控制单元和现场可编程门阵列选择性连接,用作微控制单元或现场可编程门阵列的数据存储器和指令存储器。

本发明的有益效果有:区别于现有技术,本发明提供的片上系统包括微控制单元及现场可编程门阵列,其中微控制单元包括系统总线,现场可编程门阵列包括总线接口及至少一个外部设备,总线接口与系统总线连接,至少一个外部设备与总线接口连接,以此通过现场可编程门阵列的可编程特点,提高微控制单元的扩展性和通用性,降低设计难度和成本。

附图说明

图1是本发明的片上系统的第一实施例的结构示意图;

图2是本发明的片上系统的第二实施例的结构示意图;

图3是本发明的片上系统的第三实施例的部分结构示意图;

图4是本发明的片上系统的第四实施例的部分结构示意图;

图5是本发明的片上系统的第五实施例的结构示意图;

图6是本发明的片上系统中的外部设备的结构示意图。

具体实施方式

本说明书及权利要求书通篇中所用的某些用语指代特定部件。如所属领域的技术人员可以理解的是,电子设备制造商可利用不同名称来指代同一个部件。本文并非以名称来区分部件,而是以功能来区分部件。在以下说明书及权利要求书中,用语“包括”是开放式的限定词语,因此其应被解释为意指“包括但不限于…”。另外,用语“耦合”旨在意指间接电连接或直接电连接。因此,当一个装置耦合到另一装置时,则这种连接可以是直接电连接或通过其他装置及连接部而实现的间接电连接。

如图1所示,为本发明的片上系统的第一实施例的结构示意图。该片上系统1包括微控制单元(microcontrollerunit,mcu)10和现场可编程门阵列(fieldprogrammablegatearray,fpga)20。

其中,微控制单元10包括系统总线11,现场可编程门阵列20包括总线接口21及至少一个外部设备22。其中,系统总线11与总线接口21连接,每个外部设备22与总线接口21连接。

具体地,系统总线11用于传送数据信息、地址信息、控制信息,因此一般的系统总线包括三种不同功能的总线,即数据总线、地址总线、控制总线。在本实施例中,系统总线11主要用于传送地址信息,因此,本发明实施例中的系统总线11为地址总线,当然在其他实施例中,系统总线11还可以为数据总线及控制总线。总线接口21为连接在总线上的设备与总线之间的连接电路。

在本实施例中,通过现场可编程门阵列20包括与微控制单元10的系统总线11连接的总线接口21及与总线接口21连接的至少一个外部设备22,实现自由扩展微控制单元10的外部设备,满足不同应用领域的需求,提高微控制单元10的扩展性和通用性,降低设计难度和成本。

请参见图2,为本发明的片上系统的第二实施例的结构示意图。基于上述实施例,在本实施例中,系统总线11包括低速系统总线111及高速系统总线112,总线接口21包括低速总线接口211及高速总线接口212,外部设备22包括至少一个低速外部设备221及至少一个高速外部设备222。

其中,现场可编程门阵列20的低速总线接口211与微控制单元10的低速系统总线111连接,现场可编程门阵列20的高速总线接口212与微控制单元10的高速系统总线112连接。另外,外部设备22与总线接口21连接,具体地,低速外部设备221与低速总线接口211连接,高速外部设备222与高速总线接口212连接。

需要说明的是,在实际设计时,为了不同的需求,在本发明的其他实施例中,系统总线11还可以包括低速系统总线111或高速系统总线112,相应地,至少一个外部设备22还可以包括至少一个低速外部设备221或至少一个高速外部设备222。为了简洁,在此不再对系统总线11包括低速系统总线111或系统总线11包括高速系统总线112进行详细说明。

以上所述仅为本发明的一实施例的结构,在其他实施例中,系统总线11包括但不限于低速系统总线111及高速系统总线112,总线接口21包括但不限于低速总线接口211及高速总线接口212,外部设备22包括但不限于低速外部设备221及高速外部设备222。其还可以包含其他结构。

在本实施例中,上述提供的片上系统1将微控制单元10与现场可编程门阵列20结合,通过现场可编程门阵列20的低速总线接口211及高速总线接口212,连接至不同的低速外部设备221及高速外部设备222,扩展微控制单元10与外部设备22的连接,提高了微控制单元10的扩展性和通用性,满足传统应用领域和新兴领域不同应用场景的需求,降低了设计难度及成本。

请参见图3,为本发明的片上系统的第三实施例的部分结构示意图。基于上述实施例,低速总线接口211包括第一译码器2111及第一多路选择器2112。译码器是一类多输入多输出组合的逻辑电路器件,其可以分为变量译码器和显示译码器两类。变量译码器一般是一种较少输入变为较多输出的器件,常见的有n线~2n线译码和8421bcd码译码两类,显示译码器用来将二进制数转换为对应的七段码,一般可分为驱动led和驱动lcd两类。根据需要,译码器输出的信号可以是脉冲,也可以是高电平或者低电平。多路选择器在多路数据传送过程中,能够根据需要将其中任意一路电路选出来,也可称为数据选择器或多路开关。

其中,第一译码器2111的输入端与低速系统总线111连接,第一输出端与至少一个低速外部设备221连接。第一多路选择器2112的第一端与低速系统总线111连接,第二端分别与至少一个低速外部设备221连接,控制端与第一译码器2111的第二输出端连接。

第一译码器2111通过输入端接收微控制单元10的低速系统总线111传输的地址信号,对微控制单元10内部的地址存储空间进行分段,通过第一输出端将每个地址段映射到一个低速外部设备221中,以实现微控制单元10对低速外部设备221的寻址。在一实施例中,第一译码器2111还可以用于根据微控制单元10的地址信号生成控制信号,通过第二输出端将控制信号提供给第一多路选择器2112,以使第一多路选择器2112通过控制信号选择对应的低速外部设备221,并将选择结果通过微控制单元10的低速系统总线111反馈给微控制单元10,以完成微控制单元10与低速外部设备221的选择连接。

请参见图4,为本发明的片上系统的第四实施例的部分结构示意图。基于上述实施例,高速总线接口212包括第二译码器2121及第二多路选择器2122。其中,第二译码器2121的输入端与高速系统总线112连接,第一输出端与至少一个高速外部设备222连接。第二多路选择器2122的第一端与高速系统总线112连接,第二端分别与至少一个高速外部设备222连接,控制端与第二译码器2121的第二输出端连接。

第二译码器2121通过输入端接收微控制单元10的高速系统总线112传输的地址信号,对微控制单元10内部的地址存储空间进行分段,通过第一输出端将每个地址段映射到一个高速外部设备222中,以实现微控制单元10对高速外部设备222的寻址。在一实施例中,第二译码器2121还可以用于根据微控制单元10的地址信号生成控制信号,通过第二输出端将控制信号提供给第二多路选择器2122,以使第二多路选择器2122通过控制信号选择对应的高速外部设备222,并将选择结果通过微控制单元10的高速系统总线112反馈给微控制单元10,以完成微控制单元10与高速外部设备222的选择连接。

请参见图5,为本发明的片上系统的第五实施例的结构示意图。基于上述实施例,片上系统1还包括中断控制器12。中断控制器12分别与至少一个外部设备22连接。中断控制器12与外部设备22之间的连接可以通过现场可编程门阵列20的边界总线实现,本发明并不限于此。

其中,中断控制器12可以与至少一个高速外部设备222连接,还可以与至少一个低速外部设备221连接,在一可行实施例中,还可以同时连接至少一高速外部设备222及至少一低速外部设备221。用于从至少一个外部设备22中接收中断请求,以响应处理来自至少一个外部设备22的中断请求,实现外部设备22与微控制单元10的中断控制器12的交互。

进一步地,微控制单元10还包括第一时钟端口13及第一复位端口14。在一具体实施例中,片外提供信号,通过第一时钟端口13和第一复位端口14输入到片内。第一时钟端口13用于输入时钟信号,第一复位端口14用于输入复位信号。

现场可编程门阵列20还包括第二时钟端口23和第二复位端口24。第二时钟端口23用于输入时钟信号,第二复位端口24用于输入复位信号。

在一些实施例中,第二时钟端口23输入的时钟信号与第一时钟端口13输入的时钟信号相同。第二复位端口24输入的复位信号与第一复位端口14输入的复位信号相同。可以理解的,一个时钟信号的输入可以同时满足微控制单元10及现场可编程门阵列20的需求,一个复位信号的输入可以同时复位微控制单元10及现场可编程门阵列20。

进一步地,本实施例的片上系统还包括存储器30,分别与微控制单元10和现场可编程门阵列20选择性连接,用作微控制单元10或现场可编程门阵列20的数据存储器和指令存储器。换言之,存储器30作为片上系统1的片内存储器,微控制单元10与现场可编程门阵列20共用存储器30,当片上系统1的微控制单元10模式使能时,存储器30作为微控制单元10的数据存储器和指令存储器;当片上系统1的现场可编程门阵列20模式使能时,存储器30作为现场可编程门阵列20的数据存储器和指令存储器。

在一实施例中,存储器30可以为内存条、tf卡等,可以存储全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器30中。它根据控制器指定的位置存入和取出信息。有了存储器30,装置才有记忆功能,才能保证正常工作。存储器30按用途存储器可分为主存储器(内存)和辅助存储器(外存),也有分为外部存储器和内部存储器的分类方法。外存通常是磁性介质或光盘等,能长期保存信息。内存指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或断电,数据会丢失。

请参见图6,为本发明的片上系统中的外部设备的结构示意图。至少一个外部设备22中的每个包括设备控制器61及设备功能电路62。其中,设备控制器61及设备功能电路62相互连接。进一步地,设备控制器61与总线接口21连接。在至少一个外部设备22包括高速外部设备222的实施例中,高速外部设备222的设备控制器61与高速总线接口212连接。在至少一个外部设备22包括低速外部设备221的实施例中,低速外部设备221的设备控制器61与低速总线接口211连接。设备控制器61用于将设备功能电路62映射到微控制单元10的地址存储空间,以实现微控制单元10内核对每个外部设备22的读、写和控制。设备功能电路62用于实现该设备的具体功能。进一步地,设备功能电路62包括i2c功能电路、spi(serialperipheralinterface,串行外设接口)功能电路和以太网(ethernet)功能电路中的至少一个。

进一步地,设备控制器61包括寄存器组611,寄存器组611与总线接口21连接。在至少一个外部设备22包括高速外部设备222的实施例中,高速外部设备222的寄存器组611与高速总线接口212连接。在至少一个外部设备22包括低速外部设备221的实施例中,低速外部设备221的寄存器组611与低速总线接口211连接。通过总线接口21将外部设备22的设备控制器61中的寄存器组611映射到微控制单元10内核的地址存储空间,进一步实现微控制单元10内核对每个外部设备22的读、写和控制。

本发明提供的片上系统1,将微控制单元10与现场可编程门阵列20结合,基于现场可编程门阵列20的可编程特点,使本发明的片上系统1具有良好的扩展性,满足不同应用领域的需求,扩展了微控制单元10的应用范围,其不仅能够满足工业控制等传统领域的需求,还能适应大数据、人工智能等新兴领域的需求。提高了系统的多领域的复用性,降低了设计成本及设计难度。

在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述,仅为本发明较佳的具体实施例,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1