一种芯片及其管脚复用的实现方法

文档序号:1686972 发布日期:2020-01-03 浏览:11次 >En<

阅读说明:本技术 一种芯片及其管脚复用的实现方法 (Chip and implementation method for multiplexing pins thereof ) 是由 宋存杰 于 2019-09-23 设计创作,主要内容包括:本发明公开了一种芯片及其管脚复用的实现方法,该芯片包括内部功能模块、内部GPIO模块和管脚复用模块,内部功能模块提供引出到芯片管脚的功能信号,内部GPIO模块提供GPIO信号,管脚复用模块将GPIO信号引出至芯片管脚,并将内部功能模块提供的功能信号映射到任意的芯片管脚。该芯片通过增设管脚复用模块,使其内部的功能信号可以映射到任意的管脚上,使芯片的功能扩展更加灵活,便于后期根据实际的需要变更或增删芯片功能,进一步扩大了芯片产品的应用范围。通过简化管脚复用表,并根据管脚复用表运行脚本文件,自动生成管脚复用代码文件,在设计变更时,只需要更新管脚复用表,然后重新运行脚本工具就可以生成管脚复用代码文件,更加安全可靠。(The invention discloses a chip and a method for realizing pin multiplexing thereof, wherein the chip comprises an internal function module, an internal GPIO module and a pin multiplexing module, wherein the internal function module provides a function signal led out to a chip pin, the internal GPIO module provides a GPIO signal, the pin multiplexing module leads the GPIO signal out to the chip pin and maps the function signal provided by the internal function module to any chip pin. The chip has the advantages that the multiplexing module of the pins is additionally arranged, so that internal functional signals can be mapped to any pins, the function expansion of the chip is more flexible, the functions of the chip can be changed or added or deleted according to actual needs in the later stage, and the application range of chip products is further expanded. The pin multiplexing code file is automatically generated by simplifying the pin multiplexing table and running the script file according to the pin multiplexing table, and when the design is changed, the pin multiplexing code file can be generated only by updating the pin multiplexing table and then running the script tool again, so that the method is safer and more reliable.)

一种芯片及其管脚复用的实现方法

技术领域

本发明涉及计算机芯片设计技术领域,更具体的说是涉及一种芯片及其管脚复用的实现方法。

背景技术

目前,随着芯片技术的发展,芯片的集成度越来越高,芯片所支持的功能越来越复杂,芯片内部的功能模块有越来越多的接口信号需要引出到芯片管脚,但是芯片管脚数目是有限的。现在的芯片通常是将单个芯片管脚复用为内部功能模块的多个接口信号,一般为三到四个,即三到四个内部功能信号共享同一个芯片管脚。对于每一个内部功能信号来说,一般只引出到单一的芯片管脚。

一方面,芯片管脚的复用关系一般是在芯片设计阶段根据典型应用场景确定的,但是,在芯片的实际使用中可能会遇到预料不到的新的应用场景,比如功能1与功能2原本预计不会同时工作,所以共享了同一个芯片管脚,但实际有的应用场景可能就需要功能1与功能2同时工作,这时就需要共享同一个芯片管脚的多个功能信号同时引出到芯片管脚。芯片管脚复用关系设计的不合理或者考虑不够全面,就可能限制新的功能应用。

另一方面,现有芯片每个管脚只能复用为三到四个内部功能信号,现有的管脚复用表可参见下表1:

表1现有管脚复用表

ball 功能1 方向 功能2 方向 功能3 方向 功能4 方向 寄存器
GPIO0 gpio_d[0] IO uart0_tx O sim_io IO ssi1_rx I mux[1:0]
GPIO1 gpio_d[1] IO uart0_rx I sim_rst O ssi1_tx O mux[3:2]

由表1可以看出,现有的管脚复用表中需要列出每一个管脚所对应的多个内部功能信号、功能信号的方向、以及与之对应的选择寄存器的名称,导致管脚复用表比较复杂。

不难发现,现有技术的芯片管脚复用方法存在如下技术问题:

1、芯片管脚的复用关系在芯片设计阶段就根据预期的芯片应用场景确定了,芯片只能应用于典型的预期的产品,而难以满足一些复杂的非预期的产品应用的特殊需求,限制了芯片的产品应用范围,不利于芯片的产品应用创新;

2、现有技术的芯片管脚复用方法如果芯片管脚的复用关系在芯片设计阶段规划的不够周全,实际的芯片可能会存在功能应用的缺陷;

3、芯片管脚的复用关系是确定的,芯片的管脚功能及产品的PCB板很容易被分析出来,芯片的产品应用系统存在被克隆的风险。

因此,如何提供一种管脚复用表更加简化、设计合理、使用更加灵活的芯片管脚复用的实现方法是本领域技术人员亟需解决的问题。

发明内容

有鉴于此,本发明提供了一种芯片及其管脚复用的实现方法,该芯片通过增设管脚复用模块,使其内部的功能信号可以映射到任意的管脚上,使芯片的功能扩展更加灵活。且该管脚复用的实现方法通过简化管脚复用表,并根据管脚复用表运行脚本文件,自动生成管脚复用代码文件,这样在设计变更时,只需要更新管脚复用表,然后重新运行脚本工具就可以生成管脚复用代码文件,不需要手工修改代码文件,解决了人为修改信号造成错误率高的问题。

为了实现上述目的,本发明采用如下技术方案:

一方面,本发明提供了一种芯片,包括内部功能模块、内部GPIO模块和管脚复用模块,所述内部功能模块和内部GPIO模块均与所述管脚复用模块连接,所述内部功能模块提供引出到芯片管脚的功能信号,所述内部GPIO模块提供GPIO信号,所述管脚复用模块将GPIO信号引出至芯片管脚,并将所述内部功能模块提供的功能信号映射到任意的芯片管脚。

进一步地,所述内部功能模块提供的功能信号对应的管脚复用模块的端口中有三根信号,分别是输入信号、输出信号和方向选择信号。

进一步地,所述管脚复用模块包括管脚复用控制寄存器组、多个管脚输出控制逻辑单元和一个管脚输入控制逻辑单元,所述管脚复用控制寄存器组分别与多个管脚输出控制逻辑单元和一个管脚输入控制逻辑单元连接;

所述管脚复用控制寄存器组控制其对应的所述管脚输出控制逻辑单元在GPIO信号和所有的功能信号中进行信号选择,并将选中的输出信号和方向选择信号送至对应的芯片管脚;

所述管脚复用控制寄存器组控制所述管脚输入控制逻辑单元将来自芯片管脚的输入信号映射到内部的GPIO信号和功能信号的输入信号端口。

进一步地,根据功能信号方向的不同,所述内部功能模块与所述管脚复用模块连接的功能信号的实际信号不同,具体为:

方向为输入时,功能信号只连接输入信号,此时输出端口固定接0,方向选择信号固定为0,即固定为输入方向;

方向为输出时,功能信号只连接输出信号,此时方向选择信号固定为1,即固定为输出方向;

方向为双向时,功能信号提供三根信号,分别连接管脚复用模块的输入信号、输出信号和方向选择信号。

进一步地,所述GPIO信号的方向是双向的,所述功能信号的方向为固定输入的或固定输出的或双向的。

经由上述技术方案可知,本发明提供的芯片通过增设管脚复用模块,使其内部的功能信号可以映射到任意的管脚上,使芯片的功能扩展更加灵活,更便于后期使用过程中根据实际的需要变更或增删芯片功能,进一步扩大了芯片产品的应用范围。

另一方面,本发明还提供了一种芯片管脚复用的实现方法,该方法包括以下步骤:

设计管脚复用表,确定多个芯片管脚中可复用的管脚数量;

根据可复用的管脚数量设定GPIO信号数量;

将内部GPIO信号引出至芯片管脚上,并将内部功能信号映射到任意的芯片管脚上;

根据管脚复用表运行脚本自动生成管脚复用代码文件,对可复用管脚进行管脚复用。

进一步地,所述管脚复用表包括信号序号、信号名称以及信号方向。

进一步地,所述管脚复用表如下:

序号[m] 信号名称 信号方向
0 gpio_d[n] IO
1 uart0_tx O
2 uart0_rx I
3 ssi1_clk IO

表中,m表示内部功能信号的数量,n表示GPIO信号及可复用的芯片管脚的数量。

进一步地,所述GPIO信号的方向是双向的,所述功能信号的方向为固定输入的或固定输出的或双向的。

进一步地,运行脚本生成管脚复用代码文件时,根据功能信号方向的不同,其实际信号不同,具体为:

方向为输入时,功能信号只连接输入信号,此时输出端口固定接0,方向选择信号固定为0,即固定为输入方向;

方向为输出时,功能信号只连接输出信号,此时方向选择信号固定为1,即固定为输出方向;

方向为双向时,功能信号提供三根信号,分别连接管脚复用模块的输入信号、输出信号和方向选择信号。

经由上述的技术方案可知,与现有技术相比,本发明中管脚复用的实现方法,首先是设计管脚复用表,确定可复用的管脚数量,及内部功能信号的名称及方向。然后根据管脚复用表,运行脚本自动生成管脚复用模块的代码文件。这样在设计变更时,比如新增或删除了内部功能模块,导致内部功能信号出现了变化,只需要更新管脚复用表,然后重新运行脚本工具就可以生成管脚复用模块的代码文件,不需要手工修改代码文件,减小了人为修改信号造成错误的可能,更加安全可靠。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1附图为本发明提供的一种芯片的结构架构示意图;

图2附图为本发明实施例中管脚复用模块的结构框架示意图;

图3附图为本发明实施例中管脚输入控制逻辑单元的结构框图;

图4附图为本发明提供的一种芯片管脚复用的实现方法的方法流程示意图;

图5附图为本发明实施例中功能信号与管脚复用模块的连接关系示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

一方面,参见附图1,本发明实施例公开了一种芯片,包括内部功能模块2、内部GPIO模块1和管脚复用模块3,内部功能模块2和内部GPIO模块1均与管脚复用模块3连接,内部功能模块2提供引出到芯片管脚的功能信号,内部GPIO模块1提供GPIO信号,管脚复用模块3将GPIO信号引出至芯片管脚,并将内部功能模块2提供的功能信号映射到任意的芯片管脚。

在一个具体的实施例中,内部功能模块2提供的功能信号对应的管脚复用模块3的端口中有三根信号,分别是输入信号、输出信号和方向选择信号。

在一个具体的实施例中,参见附图2,管脚复用模块3包括管脚复用控制寄存器组31、多个管脚输出控制逻辑单元32和一个管脚输入控制逻辑单元33,管脚复用控制寄存器组31分别与多个管脚输出控制逻辑单元32和一个管脚输入控制逻辑单元33连接;

管脚复用控制寄存器组31控制其对应的管脚输出控制逻辑单元32在GPIO信号和所有的功能信号中进行信号选择,并将选中的输出信号和方向选择信号送至对应的芯片管脚;

管脚复用控制寄存器组31控制管脚输入控制逻辑单元33将来自芯片管脚的输入信号映射到内部的GPIO信号和功能信号的输入信号端口。

在本实施例中,管脚复用模块3主要由管脚复用控制寄存器组31、n个管脚输出控制逻辑单元32和一个管脚输入控制逻辑单元33组成。在管脚复用控制寄存器组31中,每一个复用管脚对应一组寄存器比特。每一个管脚输出控制逻辑在所对应的寄存器比特的控制下,在GPIO信号(gpio_out[n]和gpio_en[n])和所有的功能信号(core_out[m]和core_en[m])之中做出选择,将选中的输出信号(port_out[n])和方向选择信号(port_en[n])送往对应的芯片管脚。

管脚输入控制逻辑单元33的结构如图3所示。在管脚复用控制寄存器组31的寄存器控制下,将来自芯片管脚的输入信号(port_i[n])映射到内部的GPIO信号(gpio_in[n])和功能信号的输入信号端口(core_in[m])。

在一个具体的实施例中,根据功能信号方向的不同,内部功能模块2与管脚复用模块3连接的功能信号的实际信号不同,具体为:

方向为输入时,功能信号只连接输入信号,此时输出端口固定接0,方向选择信号固定为0,即固定为输入方向;

方向为输出时,功能信号只连接输出信号,此时方向选择信号固定为1,即固定为输出方向;

方向为双向时,功能信号提供三根信号,分别连接管脚复用模块的输入信号、输出信号和方向选择信号。

在一个具体的实施例中,GPIO信号的方向是双向的,功能信号的方向为固定输入的或固定输出的或双向的。

本实施例提供的芯片中除了多个内部功能模块需要引出到芯片管脚的功能信号外,还有GPIO信号,一般情况下GPIO信号数量与能够复用的管脚数量相同,各个芯片管脚默认是GPIO功能。

另一方面,参见附图4,本发明实施例还公开了一种芯片管脚复用的实现方法,该方法包括以下步骤:

S1:设计管脚复用表,确定多个芯片管脚中可复用的管脚数量;

S2:根据可复用的管脚数量设定GPIO信号数量;

S3:将内部GPIO信号引出至芯片管脚上,并将内部功能信号映射到任意的芯片管脚上;

S4:根据管脚复用表运行脚本自动生成管脚复用代码文件,对可复用管脚进行管脚复用。

具体地,管脚复用表包括信号序号、信号名称以及信号方向。

在一个具体的实施例中,管脚复用表如下表2所示:

表2管脚复用表

序号[m] 信号名称 信号方向
0 gpio_d[n] IO
1 uart0_tx O
2 uart0_rx I
3 ssi1_clk IO

表格中只有三列:序号[m]、信号名称以及信号方向。其中序号后面括号中的m表示内部功能信号的数量,信号名称中gpio_d后面括号中的n表示GPIO信号及可复用的芯片管脚的数量。

m表示内部功能信号的数量,n表示GPIO信号及可复用的芯片管脚的数量。

在一个具体的实施例中,GPIO信号的方向是双向的,功能信号的方向为固定输入的或固定输出的或双向的。

在一个具体的实施例中,运行脚本生成管脚复用代码文件时,根据功能信号方向的不同,其实际信号不同,具体为:

方向为输入时,功能信号只连接输入信号,此时输出端口固定接0,方向选择信号固定为0,即固定为输入方向;

方向为输出时,功能信号只连接输出信号,此时方向选择信号固定为1,即固定为输出方向;

方向为双向时,功能信号提供三根信号,分别连接管脚复用模块的输入信号、输出信号和方向选择信号。

参见附图5,在本实施例中,运行脚本生成管脚复用模块的代码文件时,根据功能信号方向的不同,内部功能模块与管脚复用模块连接的功能信号的实际信号不同,方向为输入时,功能信号只连接输入信号(core_in[m]),此时输出端口core_out[m]固定接0,方向选择信号core_en[m]固定为0,即固定为输入方向;方向为输出时,功能信号只连接输出信号(core_out[m]),此时方向选择信号固定为1,即固定为输出方向;方向为双向时,功能信号提供三根信号,分别连接管脚复用模块的输入信号(core_in[m])、输出信号(core_out[m])、方向选择信号(core_en[m])。

在本实施例中,管脚复用模块具体可以划分为顶层和内层两部分,管脚复用内层模块的包括管脚复用的组合逻辑和寄存器组。在运行脚本生成的管脚复用顶层模块中,已经将功能信号的有效信号与管脚复用内层模块的各个端口信号连接好,这样在上一层中对管脚复用顶层模块中进行例化时,只需要连接各个内部功能模块的有效信号即可。

综上所述,与现有技术相比,本发明实施例提供了的芯片管脚复用的实现方法,具有如下优点:

1、本发明实施例提供的芯片通过增设管脚复用模块,使其内部的功能信号可以映射到任意的管脚上,使芯片的功能扩展更加灵活,更便于后期使用过程中根据实际的需要变更或增删芯片功能,进一步扩大了芯片产品的应用范围;

2、简化了管脚复用表的结构,只需要列出GPIO信号的数量、即可复用的I/O管脚的数量,以及需要引出到管脚的内部功能信号的名称及方向;

3、在设计变更时,只需要更新管脚复用表,然后重新运行脚本工具就可以生成管脚复用模块的代码文件,不需要手工修改代码文件,减小了人为修改信号造成错误的可能,更加安全可靠。

本发明中提到的GPIO(General Purpose Input Output),中文名称为通用输入/输出端口,也称端口扩展器。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种PCIe链路训练方法、端设备及通讯系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!