CN110765066B - 一种片上*** - Google Patents
一种片上*** Download PDFInfo
- Publication number
- CN110765066B CN110765066B CN201911006753.2A CN201911006753A CN110765066B CN 110765066 B CN110765066 B CN 110765066B CN 201911006753 A CN201911006753 A CN 201911006753A CN 110765066 B CN110765066 B CN 110765066B
- Authority
- CN
- China
- Prior art keywords
- gpio
- register
- control unit
- circuit
- chip
- 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.)
- Active
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/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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
Abstract
本申请公开了一种片上***,该片上***包括微控制单元和现场可编程门阵列,微控制单元通过***总线与现场可编程门阵列连接,该现场可编程门阵列包括总线桥接电路以及与总线桥接电路连接的至少一个功能电路,总线桥接电路与***总线连接,功能电路包括GPIO功能电路。通过上述方式,本申请能够动态配置GPIO功能电路的功能和数量,提高微控制单元的扩展性,降低GPIO功能电路设计的复杂度。
Description
技术领域
本申请涉及电子电路技术领域,具体涉及一种片上***。
背景技术
通用输入输出端口(GPIO,General Purpose Input Output)具有低功耗、小封装、低成本、布线简单、易移植以及高集成等特点,设计人员可以自由控制端口方向,作为通用输入端口、通用输出端口或通用输入输出端口,也可以自由控制端口的功能。
微控制单元(MCU,Microcontroller Unit)与现场可编程门阵列(FPGA,FieldProgrammable Gate Array)片上***是指FPGA将MCU、存储器、外部设备等与FPGA内核连接起来,构成一个MCU控制器加FPGA内核的片上***,但是MCU的扩展性不足,且MCU的外部设备的设计比较复杂。
发明内容
本申请主要解决的问题是提供一种片上***,能够动态配置GPIO功能电路的功能和数量,提高微控制单元的扩展性,降低GPIO功能电路设计的复杂度。
为解决上述技术问题,本申请采用的技术方案是:提供一种片上***,该片上***包括微控制单元和现场可编程门阵列,微控制单元通过***总线与现场可编程门阵列连接,该现场可编程门阵列包括:总线桥接电路以及与总线桥接电路连接的至少一个功能电路,总线桥接电路与***总线连接,功能电路包括GPIO功能电路。
通过上述方案,本申请的有益效果是:该片上***包括通过***总线连接的微控制单元与现场可编程门阵列,GPIO功能电路设计在现场可编程门阵列的内部,基于现场可编程门阵列的逻辑资源实现将GPIO功能电路作为微控制单元的外部设备;由于现场可编程门阵列具有可编程的特点,使得该片上***具有良好的扩展性,设计人员可以根据需要动态配置现场可编程门阵列中GPIO功能电路的功能以及数量,能够提高微控制单元的扩展性和易用性,降低了GPIO功能电路的设计和应用复杂度,集成度更高,方便控制,且片上***的整体面积减小,可降低空间成本。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请提供的片上***一实施例的结构示意图;
图2是本申请提供的片上***另一实施例的结构示意图;
图3是图2所示实施例中总线桥接电路的结构示意图;
图4是图2所示实施例中GPIO电路的结构示意图;
图5是图2所示实施例中GPIO控制器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1,图1是本申请提供的片上***一实施例的结构示意图,片上***包括微控制单元10和现场可编程门阵列20,微控制单元10通过***总线与现场可编程门阵列20连接。
现场可编程门阵列20包括:总线桥接电路21以及与总线桥接电路21连接的至少一个功能电路22,总线桥接电路21用于在微控制单元10和功能电路22之间传递数据,实现微控制单元10与功能电路22之间的通信。
总线桥接电路21与***总线连接,***总线从现场可编程门阵列20的外部边界延伸到现场可编程门阵列20的内部,与现场可编程门阵列20中的总线桥接电路21连接;功能电路22包括GPIO功能电路221,GPIO功能电路221可接收微控制单元10通过***总线与总线桥接电路21传输过来的信号,也可以通过总线桥接电路21与***总线传输信号至微控制单元10,实现双向通信。
本实施例提出了一种基于微控制单元10与现场可编程门阵列20的片上***架构,该片上***中GPIO功能电路221设计在现场可编程门阵列20的内部,该片上***以微控制单元10为核心,基于现场可编程门阵列20的逻辑资源实现将GPIO功能电路221作为微控制单元10的外部设备;由于现场可编程门阵列20具有可编程的特点,该设计具有良好的扩展性,设计人员可以动态配置微控制单元10的外部设备(现场可编程门阵列20中的GPIO功能电路221)的功能和数量,提高了微控制单元10的扩展性和易用性,降低了GPIO功能电路221的设计和应用复杂度,有助于设计人员快速开发片上***,集成度更高,方便控制,且片上***的整体面积减小,可降低空间成本。
请参阅图2,图2是本申请提供的片上***另一实施例的结构示意图,片上***包括通过***总线连接的微控制单元10和现场可编程门阵列20,该***总线包括高级高性能总线(AHB,Advanced High Performance Bus)总线。
总线桥接电路21包括互相连接的译码器211与多路选择器212,译码器211通过***总线与微控制单元10连接;微控制单元10通过译码器211与至少一个GPIO功能电路221连接,微控制单元10可为每个GPIO功能电路221分配一个地址段,以控制GPIO功能电路221。
进一步地,译码器211包括输入端、第一输出端以及第二输出端,译码器211的输入端与***总线连接,译码器211的第一输出端分别与至少一个GPIO功能电路221连接,用于对微控制单元10的地址存储空间进行分段,以将每个地址段映射到一个GPIO功能电路221,以及用于根据微控制单元10的地址信号生成控制信号。
多路选择器212包括控制端、第一端以及第二端,多路选择器212的第一端与***总线连接,多路选择器212的第二端分别与至少一个GPIO功能电路221连接,多路选择器212的控制端与译码器211的第二输出端连接,用于作为微控制单元10与每个GPIO功能电路221之间的数据通路,以根据控制信号选择相应的GPIO功能电路221与微控制单元10连接。
GPIO功能电路221包括互相连接的GPIO控制器2211与GPIO电路2212,GPIO控制器2211与总线桥接电路21连接,GPIO控制器2211通过总线桥接电路21映射到微控制单元10的地址存储空间,即每个GPIO控制器2211对应微控制单元10的地址存储空间中的一个地址段;GPIO电路2212可基于现场可编程门阵列20的逻辑资源实现通用输入输出功能。
在一具体的实施例中,如图3所示,译码器211为地址译码器,地址译码器211可接收微控制单元10通过***总线发送的地址信号,对该地址信号进行译码,将译码后的地址信号发送至GPIO功能电路221;多路选择器212在接收到地址译码器211产生的控制信号后选择与地址信号匹配的GPIO功能电路221与微控制单元10连接,可实现微控制单元10与GPIO功能电路221之间的数据读写操作。
在微控制单元10读取GPIO功能电路221中的数据时,微控制单元10通过***总线发送地址信号至地址译码器211,地址译码器211输出有效的控制信号至多路选择器212,以使得多路选择器212将与地址信号匹配的GPIO功能电路221与微控制单元10之间的电路导通,GPIO功能电路221可输出数据信号至多路选择器212,多路选择器212通过***总线将该数据信号传输至微控制单元10,实现数据的读取;在微控制单元10向GPIO功能电路221写入数据时,微控制单元10通过***总线发送数据信号至多路选择器212,同时发送地址信号至地址译码器211,多路选择器212在接收到地址译码器211发送的有效的控制信号后,将微控制单元10与相应的GPIO功能电路221之间的电路导通,以将该数据信号发送至对应的GPIO功能电路221,实现数据的写入。
结合参阅图2与图4,GPIO电路2212的具体结构可如图4所示,图4所示的电路结构是片上***的部分结构示意图,基于上述实施例,GPIO电路2212包括GPIO片内总线接口41、GPIO功能接口42以及GPIO片外接口43,GPIO片内总线接口41与GPIO控制器2211连接;GPIO功能接口42与GPIO片内总线接口41连接;GPIO片外接口43与GPIO功能接口42连接。
GPIO片内总线接口41是微控制单元10与GPIO功能接口42之间的片内交互接口,其可接收时钟信号、复位信号、片选信号、读地址信号、写使能信号、预备信号以及写地址信号,并发出预备输出信号、应答信号以及中断信号,每个信号对应一个输入/输出端口,时钟信号和复位信号可为微控制单元10发送过来的信号。
GPIO片外接口43可实现GPIO功能接口42与片外设备之间的交互,其是微控制单元10与现场可编程门阵列20的片外交互接口;具体地,GPIO片外接口43包括输入输出端口、第一选择器431、第二选择器432以及反相器433,GPIO片外接口43的输入输出端口与GPIO功能接口42的输入端口连接,GPIO片外接口43的输入输出端口还与反相器433连接,第一选择器431分别与第二选择器432以及反相器433连接,第二选择器432与反相器433连接。
GPIO功能接口42与GPIO片内总线接口41可进行双向通信,GPIO功能接口42可为16位的并行接口,其具有中断、复用、位掩码以及输入输出安全保护功能;具体地,GPIO功能接口42包括输入端口、输出端口、复用端口和使能端口,GPIO功能接口42的输入端口与GPIO片外接口43的输入输出端口连接,GPIO功能接口42的输出端口与第一选择器431的第一输入端连接,GPIO功能接口42的复用端口分别与第一选择器431的控制端以及第二选择器432的控制端连接,GPIO功能接口42的使能端口与第二选择器432的第一输入端连接。
进一步地,第一选择器431的第二输入端与第二选择器432的第二输入端接收复用选择信号,第一选择器431的输出端与反相器433的输入端连接,第二选择器432的输出端与反相器433的控制端连接,反相器433的输出端分别与GPIO片外接口43的输入输出端口以及GPIO功能接口42的输入端口连接。
第一选择器431和第二选择器432可为二选一选择器,当GPIO功能接口42的复用接口输出的信号为高电平时,第一选择器431和第二选择器432输出的信号为复用选择信号;当GPIO功能接口42的复用接口输出的信号为低电平时,第一选择器431和第二选择器432的输出信号分别为GPIO功能接口42的输出端口和使能端口输出的信号;第二选择器432输出至反相器433的信号作为反相器433的使能信号,当使能信号有效时,反相器433对第一选择器431输出的信号进行处理,输出与第一选择器431输出的信号相反的信号,并将该信号输出至GPIO片外接口43的输入输出端口。
GPIO控制器2211的具体结构可如图5所示,图5是片上***的部分结构示意图,基于上述实施例,GPIO控制器2211包括寄存器组51与组合逻辑电路52,寄存器组51被映射到微控制单元10的地址存储空间,以使微控制单元10实现对GPIO电路2212的读写、控制和中断处理,即寄存器组51的地址与微控制单元10的地址存储空间具有映射关系,寄存器组51的地址对应于地址存储空间中的一个地址段。
寄存器组51包括数据寄存器、数据输出寄存器、输出使能寄存器、复用使能寄存器、中断使能寄存器、中断类型寄存器、中断状态寄存器和位掩码控制寄存器,GPIO电路2212中具有与每个寄存器对应的端口;数据寄存器、数据输出寄存器、输出使能寄存器、复用使能寄存器、中断使能寄存器、中断类型寄存器、中断状态寄存器和位掩码控制寄存器均被映射到微控制单元10的地址存储空间。
组合逻辑电路52分别与中断使能寄存器、中断类型寄存器、中断状态寄存器和位掩码控制寄存器连接,其用于根据中断使能寄存器、中断类型寄存器、中断状态寄存器和位掩码控制寄存器中的信号,生成中断向量表,以实现中断控制。
通过对GPIO控制器2211中寄存器组51的地址深度和设计人员配置的GPIO功能电路221的数量进行分析,可实现对GPIO功能电路221的数量的动态管理。
本实施例中的电路功能可使用硬件描述语言(HDL,Hardware DescriptionLanguage)实现,如Verilog HDL或超高速集成电路硬件描述语言(VHDL,Very High SpeedIntegrated Circuit Hardware Description Language),设计人员可采用HDL进行编写,对GPIO功能电路221的功能以及数量进行设计。
本实施例中的片上***可实现对微控制单元10的外部设备(GPIO功能电路221)的功能和数量的动态控制与管理,提高了微控制单元10对GPIO功能电路221的动态管理和控制能力,增强了微控制单元10的功能的可扩展性和通用性,降低了GPIO功能电路221的设计和应用复杂度。
以上仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (8)
1.一种片上***,其特征在于,包括微控制单元和现场可编程门阵列,所述微控制单元通过***总线与所述现场可编程门阵列连接,所述现场可编程门阵列包括:
总线桥接电路,与所述***总线连接,其中,所述***总线从所述现场可编程门阵列的外部边界延伸到所述现场可编程门阵列的内部,与所述总线桥接电路连接;
至少一个功能电路,与所述总线桥接电路连接,其中,所述功能电路包括GPIO功能电路,所述GPIO功能电路包括:GPIO控制器与GPIO电路,所述GPIO控制器与所述总线桥接电路连接;所述GPIO电路与所述GPIO控制器连接,所述GPIO控制器通过所述总线桥接电路映射到所述微控制单元的地址存储空间;
所述GPIO电路包括:GPIO片内总线接口、GPIO功能接口以及GPIO片外接口,所述GPIO片内总线接口与所述GPIO控制器连接;所述GPIO功能接口与所述GPIO片内总线接口连接;所述GPIO片外接口与所述GPIO功能接口连接,所述GPIO片外接口包括第一选择器、第二选择器和反相器,所述第一选择器与所述GPIO功能接口、所述第二选择器以及所述反相器连接,所述第二选择器与所述GPIO功能接口以及所述反相器连接。
2.如权利要求1中所述的片上***,其特征在于,所述总线桥接电路包括:
译码器,输入端与所述***总线连接、第一输出端分别与所述至少一个GPIO功能电路连接,用于对所述微控制单元的地址存储空间进行分段,以将每个地址段映射到一个GPIO功能电路,以及用于根据所述微控制单元的地址信号生成控制信号;
多路选择器,第一端与所述***总线连接、第二端分别与所述至少一个GPIO功能电路连接、控制端与所述译码器的第二输出端连接,用于作为所述微控制单元与每个所述GPIO功能电路之间的数据通路,以根据所述控制信号选择相应的GPIO功能电路与所述微控制单元连接。
3.如权利要求1中所述的片上***,其特征在于,
所述GPIO控制器包括寄存器组,其中,所述寄存器组被映射到所述微控制单元的地址存储空间,以使所述微控制单元实现对所述GPIO电路的读写、控制和中断处理。
4.如权利要求3中所述的片上***,其特征在于,
所述寄存器组包括数据寄存器、数据输出寄存器、输出使能寄存器、复用使能寄存器、中断使能寄存器、中断类型寄存器、中断状态寄存器和位掩码控制寄存器,其中,所述数据寄存器、数据输出寄存器、输出使能寄存器、复用使能寄存器、中断使能寄存器、中断类型寄存器、中断状态寄存器和位掩码控制寄存器均被映射到所述微控制单元的地址存储空间。
5.如权利要求4中所述的片上***,其特征在于,
所述GPIO控制器还包括组合逻辑电路,分别与所述中断使能寄存器、中断类型寄存器、中断状态寄存器和位掩码控制寄存器连接,用于根据中断使能寄存器、中断类型寄存器、中断状态寄存器和位掩码控制寄存器中的信号,生成中断向量表,以实现中断控制。
6.如权利要求1中所述的片上***,其特征在于,
所述GPIO片外接口包括输入输出端口,与所述GPIO功能接口连接。
7.如权利要求6中所述的片上***,其特征在于,
所述GPIO功能接口包括输入端口、输出端口、复用端口和使能端口,所述输入端口与所述输入输出端口连接,所述输出端口与所述第一选择器的第一输入端连接,所述第一选择器的第二输入端接收复用选择信号、控制端与所述复用端口连接,所述使能端口与所述第二选择器的第一输入端连接,所述第二选择器的第二输入端接收所述复用选择信号、控制端与所述复用端口连接,所述第一选择器和所述第二选择器的输出端分别与所述反相器的输入端与控制端连接,所述反相器的输出端与所述输入输出端口连接。
8.如权利要求1中所述的片上***,其特征在于,所述***总线包括AHB总线。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911006753.2A CN110765066B (zh) | 2019-10-22 | 2019-10-22 | 一种片上*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911006753.2A CN110765066B (zh) | 2019-10-22 | 2019-10-22 | 一种片上*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110765066A CN110765066A (zh) | 2020-02-07 |
CN110765066B true CN110765066B (zh) | 2020-09-29 |
Family
ID=69332504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911006753.2A Active CN110765066B (zh) | 2019-10-22 | 2019-10-22 | 一种片上*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110765066B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112100098B (zh) * | 2020-09-17 | 2021-08-03 | 广东高云半导体科技股份有限公司 | Ddr控制***及ddr存储*** |
CN112256616B (zh) * | 2020-10-22 | 2021-11-26 | 广东高云半导体科技股份有限公司 | 支持usb和gpio转换的***级芯片及通信方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105700970A (zh) * | 2014-11-25 | 2016-06-22 | 英业达科技有限公司 | 服务器*** |
CN110008172A (zh) * | 2019-04-02 | 2019-07-12 | 广东高云半导体科技股份有限公司 | 一种片上*** |
CN209514613U (zh) * | 2019-01-22 | 2019-10-18 | 山东高云半导体科技有限公司 | 现场可编程门阵列fpga开发板 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018045549A1 (zh) * | 2016-09-09 | 2018-03-15 | 华为技术有限公司 | 一种射频***、信号处理***及终端 |
CN107766285B (zh) * | 2017-09-12 | 2021-06-01 | 郑州云海信息技术有限公司 | 一种基于fpga挂载外部存储的复位*** |
CN110321319B (zh) * | 2019-09-02 | 2020-09-29 | 广东高云半导体科技股份有限公司 | 片上*** |
-
2019
- 2019-10-22 CN CN201911006753.2A patent/CN110765066B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105700970A (zh) * | 2014-11-25 | 2016-06-22 | 英业达科技有限公司 | 服务器*** |
CN209514613U (zh) * | 2019-01-22 | 2019-10-18 | 山东高云半导体科技有限公司 | 现场可编程门阵列fpga开发板 |
CN110008172A (zh) * | 2019-04-02 | 2019-07-12 | 广东高云半导体科技股份有限公司 | 一种片上*** |
Also Published As
Publication number | Publication date |
---|---|
CN110765066A (zh) | 2020-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7779286B1 (en) | Design tool clock domain crossing management | |
CN103210589B (zh) | 在芯片上***中结合独立逻辑块 | |
US8069286B1 (en) | Flexible on-chip datapath interface having first and second component interfaces wherein communication is determined based on a type of credit condition | |
CN110781119B (zh) | 一种i2c总线扩展接口及其控制方法、片上*** | |
US8269524B2 (en) | General purpose input/output pin mapping | |
RU2417412C2 (ru) | Стандартный аналоговый интерфейс для многоядерных процессоров | |
JP2002049576A (ja) | チップ搭載システムのためのバス・アーキテクチャ | |
CN111684392B (zh) | 用于片上***的存储器子*** | |
US7307450B2 (en) | Programmable logic block for designing an asynchronous circuit | |
CN114356419B (zh) | 一种通用接口寄存器***及快速生成方法 | |
CN110765066B (zh) | 一种片上*** | |
CN110806997B (zh) | 一种片上***以及存储器 | |
WO2013081683A1 (en) | Circuit for and method of enabling the transfer of data by an integrated circuit | |
CN104598405A (zh) | 扩展芯片及可扩展的芯片***及控制方法 | |
CN111008171A (zh) | 一种带串行flash接口控制的通信ip电路 | |
CN111931442A (zh) | Fpga内嵌flash控制器及电子装置 | |
CN204390227U (zh) | 计算设备扩展装置、以及可扩展的计算*** | |
CN104657297A (zh) | 计算设备扩展***及扩展方法 | |
CN104598404B (zh) | 计算设备扩展方法和装置、以及可扩展的计算*** | |
CN109144927B (zh) | 一种多fpga互联装置 | |
US6874043B2 (en) | Data buffer | |
CN112100098B (zh) | Ddr控制***及ddr存储*** | |
CN110806998B (zh) | 一种片上***以及存储器 | |
US20020046307A1 (en) | A data buffer | |
US7215137B1 (en) | Creating virtual extender plugins using MGTs |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |