CN107861900B - 信号选择模块和信号选择系统 - Google Patents
信号选择模块和信号选择系统 Download PDFInfo
- Publication number
- CN107861900B CN107861900B CN201710999811.0A CN201710999811A CN107861900B CN 107861900 B CN107861900 B CN 107861900B CN 201710999811 A CN201710999811 A CN 201710999811A CN 107861900 B CN107861900 B CN 107861900B
- Authority
- CN
- China
- Prior art keywords
- selection
- circuit
- register
- signal
- selector
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
- Bus Control (AREA)
Abstract
一种信号选择模块,包括:选择电路,用于有选择地为至少一个第一电路与至少一个第二电路进行信号连接;寄存器模块,用于向所述选择电路发送所述进行信号连接的指令,它包括:至少一个专用选择寄存器,用于为对应的第二电路选择一个第一电路进行信号连接,或者为特定的第一电路选择一个第二电路进行信号连接;至少一个公用选择寄存器,用于为任意一个第二电路选择任意一个第一电路进行信号连接;以及至少一个许可位寄存器,与所述至少一个公用选择寄存器配合使用,为对应的第二电路启用或禁用与所述公用选择寄存器所选择的一个第一电路的信号连接。本发明还公开了采用该信号选择模块的信号选择系统。
Description
技术领域
本发明涉及控制器领域,尤其涉及信号选择模块和信号选择系统。
背景技术
信号选择模块用于对信号信息选择,广泛应用于端口选择系统、中断控制系统以及事件触发系统中。信号选择模块往往只能进行一对一的选择,限制端口选择系统等系统的功能。以端口选择系统为例,微控制单元(microcontroller unit-MCU)通常会搭载丰富的外设电路模块(例如计时器TIMER、A/D转换器、D/A转换器、等等),而多数外设电路模块的功能需要使用端口与片外设备进行信息交换,如通用串口的数据接收功能。MCU芯片上需要使用端口的功能可能有很多,而MCU拥有的端口数目是有限的,例如不到功能数目的一半或更少。这就要求多个功能可以复用一个端口。
发明内容
本发明提供使用较少资源就能够实现多对一的选择的技术方案。
根据本发明的一个方面,提供一种信号选择模块,包括:
选择电路,用于有选择地为至少一个第一电路与至少一个第二电路进行信号连接;
寄存器模块,用于向所述选择电路发送所述进行信号连接的指令,它包括:
至少一个专用选择寄存器,用于为对应的第二电路选择一个第一电路进行信号连接,或者为特定的第一电路选择一个第二电路进行信号连接;
至少一个公用选择寄存器,用于为任意一个第二电路选择任意一个第一电路进行信号连接;
至少一个许可位寄存器,与所述至少一个公用选择寄存器配合使用,为对应的第二电路启用或禁用与所述公用选择寄存器所选择的一个第一电路的信号连接。
如上所述的信号选择模块,所述寄存器模块包括由多个所述许可位寄存器组成的一组许可位寄存器,所述一组许可位寄存器与每个所述公用选择寄存器配合使用,为其对应的第二电路启用或禁用与所述公用选择寄存器所选择的一个第一电路的信号连接。
如上所述的信号选择模块,所述寄存器模块包括由多个所述许可位寄存器组成的两组许可位寄存器,所述两组许可位寄存器与两个所述公用选择寄存器配合使用,为其对应的第二电路启用或禁用与所述公用选择寄存器所选择的两个第一电路的信号连接。
如上所述的信号选择模块,所述寄存器模块包括由多个所述许可位寄存器组成的多组许可位寄存器,所述多组许可位寄存器与多个所述公用选择寄存器配合使用,为其对应的第二电路启用或禁用与所述公用选择寄存器所选择的多个第一电路的信号连接。
如上所述的信号选择模块,所述第一电路为外设电路模块、内设电路模块或外设电路模块中的部分电路。
根据本发明的另一方面,提供一种信号选择系统,包括如上所述的信号选择模块,其中,由多个功能对应于多个第一电路,多个端口对应于多个第二电路,所述多个功能包括至少一个输出功能和至少一个输入功能,所述选择电路根据所述寄存器模块发出的指令,选择一个或多个功能与一个或多个端口之间的信号连接。
如上所述的系统,所述输出功能包括输出功能O1、O2,所述输人功能包括输入功能I3、I4,所述端口包括端口P1、P2。
如上所述的系统,所述选择电路包括选择器1至选择器4,其中,选择器1用于为端口P1选择输出功能O1和O2,选择器4用于为端口P2选择输出功能O1和O2,选择器2用于为端口P1或P2选择输入功能I3,选择器3用于为端口P1或P2选择输入功能I4。
根据本发明的另一方面,提供一种信号选择系统,包括如上所述的信号选择模块,其中,多个输入源对应于多个第一电路,多个输出目标对应于多个第二电路,所述输入源向所述信号选择模块发送中断请求信号,所述输出目标接收由所述信号选择模块选择的中断请求信号,并向CPU请求中断。
如上所述的系统,所述信号选择模块的选择电路包括选择器1、…选择器n和选择器n+1以及或门1、…或门n,所述或门1、…或门n的第一输入对应连接所述选择器1、…选择器n的输出,所述或门1、…或门n的第二输入分别连接所述选择器n+1的输出,所述或门1、…或门n的输出对应连接所述输出目标。
如上所述的的系统,所述输入源为包括计时器TIMER、A/D转换器、D/A转换器、输入/输出端口在内的外设电路模块、或者为包括RAM、FLASH在内的内设电路模块,所述输出目标包括译码器。
根据本发明的另一方面,提供一种信号选择系统,包括如上所述的信号选择模块,其中,多个中断触发源对应于多个第一电路,多个触发目标对应于多个所述第二电路,所述中断触发源向所述信号选择模块发出触发请求信号,所述信号选择模块将选择后的触发请求信号发送给所述触发目标从而启动所述触发目标。
如上所述的系统,所述信号选择模块的选择电路包括选择器1、…选择器n和选择器n+1以及或门1、…或门n,所述或门1、…或门n的第一输入对应连接所述选择器1、…选择器n的输出,所述或门1、…或门n的第二输入分别连接所述选择器n+1的输出,所述或门1、…或门n的输出对应连接所述触发目标。
如上所述的系统,所述输入源为包括计时器TIMER、A/D转换器、D/A转换器、输入/输出端口在内的外设电路模块、或者为包括RAM、FLASH在内的内设电路模块,所述触发目标为包括计时器TIMER、A/D转换器、D/A转换器、输入/输出端口在内的外设电路模块,或者为包括RAM、FLASH在内的内设电路模块。
附图说明
包括附图是为提供对本公开内容的进一步的理解。附图示出了本公开内容的实施例,并与本说明书一起起到解释本公开内容原理的作用。在结合附图并阅读了下面的对特定的非限制性本公开内容的实施例之后,本公开内容的技术方案及其优点将变得显而易见。其中:
图1示出了根据本发明的一个实施例的信号选择模块的结构框图。
图2示出了根据本发明的一个实施例的多个输入/输出功能同时复用端口的结构框图。
图3示出了根据本发明的一个实施例的多个输入/输出功能同时复用端口时选择电路的结构框图。
图4示出了根据本发明的一个实施例的多个中断输入源同时复用输出目标的结构框图。
图5示出了根据本发明的一个实施例的多个中断输入源同时复用输出目标时选择电路的结构框图。
图6示出了根据本发明的一个实施例的多个事件触发源同时复用触发目标的结构框图。
图7示出了根据本发明的一个实施例的多个事件触发源同时复用触发目标时选择电路的结构框图。
具体实施方式
参考在附图中示出和在以下描述中详述的非限制性实施例,更完整地说明本公开内容的多个技术特征和优点。并且,以下描述忽略了对公知的原始材料、处理技术、组件以及设备的描述,以免不必要地混淆本公开内容的技术要点。然而,本领域技术人员能够理解到,在下文中描述本公开内容的实施例时,描述和特定示例仅作为说明而非限制的方式来给出。
在任何可能的情况下,在所有附图中将使用相同的标记来表示相同或相似的部分。此外,尽管本公开内容中所使用的术语是从公知公用的术语中选择的,但是本公开内容的说明书中所提及的一些术语可能是公开内容人按他或她的判断来选择的,其详细含义在本文的描述的相关部分中说明。此外,要求不仅仅通过所使用的实际术语,而是还要通过每个术语所蕴含的意义来理解本公开内容。
图1示出了根据本发明的一个实施例的信号选择模块的结构框图。如图1所示,信号选择模块110用于实现多个第一电路和多个第二电路之间的信号导通,信号选择模块110包括寄存器模块112和选择电路111,寄存器模块112用于向选择电路111发送指令。选择电路111根据寄存器模块112发出的指令,选择一个或多个第一电路和一个或多个第二电路之间的信号导通。
m个第一电路11、12…1m可以为外设电路模块(例如计时器TIMER、A/D转换器、D/A转换器、输入/输出端口等等)、内设电路模块(例如RAM、FLASH等等)或外设电路模块中的部分电路(例如计时器TIMER具有输入功能的部分电路、计时器TIMER具有输出功能的部分电路、A/D转换器具有输入功能的部分电路、A/D转换器具有输出功能的部分电路等等)。第一电路11、12…1m与选择电路111之间的信号分别为V111、V112、…V11m。
n个第二电路21…2n可以为外设电路模块(例如计时器TIMER、A/D转换器、D/A转换器、输入/输出端口等等)、内设电路模块(例如RAM、FLASH等等)或外设电路模块中的部分电路(例如计时器TIMER具有输入功能的部分电路、计时器TIMER具有输出功能的部分电路、A/D转换器具有输入功能的部分电路、A/D转换器具有输出功能的部分电路、中断控制器中的译码器等等)。
寄存器模块112包括n个专用选择寄存器,专用选择寄存器的个数与第二电路的个数相同,每个专用选择寄存器用于为特定的第二电路选择一个第一电路进行信号连接。n个专用选择寄存器SU1和n个第二电路21…2n一一对应,每个专用选择寄存器为对应的第二电路选择需要的一个第一电路。例如,专用选择寄存器SU1可以选择第一电路11、12…1m中的任意一个,与第二电路21进行信号传递,选择电路111根据专用选择寄存器SU1发出信号VS1的信息,选择第一电路11、12…1m中的任意一个,并通过信号V211与第二电路21进行信号传递;专用选择寄存器SUn可以选择第一电路11、12…1m中的任意一个,与第二电路2n进行信号传递,选择电路111根据专用选择寄存器SUn发出信号VSn的信息,选择第一电路11、12…1m中的任意一个,并通过信号V2n1与第二电路2n进行信号传递。
公用选择寄存器comsel和许可位寄存器用于实现为某个第二电路选择第二个第一电路进行信号连接,实现某个第二电路可以同时与两个第一电路进行信号连接,公用选择寄存器comsel和许可位寄存器配合使用。公用选择寄存器comsel为n个第二电路21…2n公用的,即公用选择寄存器comsel可以选择第一电路11、12…1m中的任意一个,并与第二电路21…2n中的任意一个进行信号传递。
n个许可位寄存器(一组许可位寄存器)和n个第二电路21…2n一一对应,每个许可位寄存器使能对应的第二电路。例如,当许可位寄存器PB1向选择电路111发送信号VEN1时,选择电路111与第二电路21之间的信号V211可以导通,当许可位寄存器PBn向选择电路111发送信号VENn时,选择电路111与第二电路2n之间的信号V2n1可以导通。当然,许可位寄存器的个数也可以小于第二电路的个数,即某些第二电路不同同时接通两个第一电路。
例如,专用选择寄存器SU1发出信号VS1的信息,选择第一电路11与第二电路21进行信号传递,此时,需要同时实现第一电路12与第二电路21之间的信号导通,则选择电路111根据公用选择寄存器comsel发出信号VX的信息,选择第一电路12,同时,许可位寄存器PB1向选择电路111发送信号VEN1时,则实现第一电路12与第二电路21之间的信号导通。
公用选择寄存器comsel可以与专用选择寄存器的规格相同(即公用选择寄存器comsel可以与专用选择寄存器的位数相同),专用选择寄存器的规格大于许可位寄存器的规格(即专用选择寄存器的位数大于许可位寄存器的位数)。专用选择寄存器可以为4位、8位或16位等等,而许可位寄存器一般为1位,许可位寄存器可以向选择电路111发送“0”、“1”来使能相应的第二电路。当第二电路较多时,通过多个第二电路共同使用公用选择寄存器comsel,可以有效地节约寄存器资源。
此外,每个专用选择寄存器用于为特定的第一电路选择一个第二电路进行信号连接,每个专用选择寄存器为对应的第二电路选择需要的一个第一电路。
信号选择模块110可以包括两个公用选择寄存器comsel和两组许可位寄存器,每个公用选择寄存器comsel与一组许可位寄存器配合使用,可以实现一个第二电路同时与三个第一电路信号导通。
专用选择寄存器、公用选择寄存器comsel和许可位寄存器可以通过CPU来控制写入的内容,CPU可以在任何时间写入内容。选择电路111的具体电路可以根据上述功能进行设置,选择电路111的实现方式可以具有很多种。
图2示出根据本发明的一个实施例的多个功能同时复用端口的系统框图。图3为图2中选择电路的示意图。系统1包括多个功能、多个端口和信号选择模块,信号选择模块可以为图1中的信号选择模块110。在图2中系统1包括输出功能O1、输出功能O2、输入功能I3、输入功能I4、端口P1和端口P2,可以某些功能位于一个电路模块,例如,输出功能O1和输入功能I3同时位于计时器TIMER内。多个功能对应于图1的第一电路,多个端口对应于图1的第二电路。
信号选择模块110用于实现多个功能和多个端口之间的信号导通,信号选择模块110包括寄存器模块112和选择电路111,寄存器模块112用于向选择电路111发送指令。选择电路111根据寄存器模块112发出的指令,选择一个或多个功能和一个或多个端口之间的信号导通。
在为每个端口设置专用选择寄存器之外,还需设置公用选择寄存器以及第二功能(副功能)许可位寄存器(在一个端口同时复用两个功能模块的情形下)。专用选择寄存器用于选择端口要实现的第一个功能,公用选择寄存器和许可位寄存器用于选择该端口要实现的第二个功能。
许可位寄存器是供每个端口专用的,许可位寄存器用于为对应的端口启用或禁用公用选择寄存器所选择的功能。公用选择寄存器既是所有功能公用的,也是全部端口公用的。
在一个实施例中,公用选择寄存器与专用选择寄存器可以保持相同的规格。例如,二者可以都采用2位寄存器。这样做的优势包括:避免在原有方案上进行过多的修改。只需简单的电路改动,就可实现多个功能同时复用一个端口。
在一个优选的实施例中,例如存在两个端口P1和P2。端口P1和P2分别设置有专用选择寄存器p1sel[1:0]、p2sel[1:0]以及许可位寄存器p1f2en、p2f2en。另外,还设置有一个公用选择寄存器comsel[1:0]。许可位寄存器p1f2en、p2f2en均为1位寄存器。专用选择寄存器plsel[1:0]、p2sel[1:0]以及公用选择寄存器comsel[1:0]均为2位寄存器,故每个端口最多可实现4种功能。通过多个端口共同使用公用选择寄存器comsel,可以有效地节约寄存器资源。
在一个实施例中,端口P1上可实现的4个功能分别为O1、O2、I3、I4。其中,O1和O2为输出功能,I3和I4为输入功能。在一个实施例中,将专用选择寄存器p1sel[1:0]设置为2’b00时意为端口P1实现输出功能O1,将专用选择寄存器p1sel[1:0]设置为2’b01时意为端口P1实现输出功能O2,将专用选择寄存器p1sel[1:0]设置为2’b10时意为端口P1实现输入功能I3,将专用选择寄存器p1sel[1:0]设置为2’b11时意为端口P1实现输入功能I4。并且,端口P2可实现的4个功能与端口P1相同。
在一个优选的实施例中,专用选择寄存器p1sel[1:0]中的配置信息为2’b00,意为端口P1要实现输出功能O1,则向端口P1发出实现输出功能O1的控制信号。同时,将公用选择寄存器comsel[1:0]设置为2’b10(选择输入功能I3),并且将许可位寄存器p1f2en设置为1’b1(使能端口P1),即意为端口P1要实现输入功能I3,则向端口P1发出实现输入功能I3的控制信号。
在上述实施例中,既能实现多个功能同时复用一个端口,又能最大限度地兼容原有的端口复用电路,并且减少硬件电路与软件程序的修改工作量。当只需实现一般的分时复用端口时,可通过将许可位寄存器p1f2en设置为例如1’b0来禁用或屏蔽公用选择寄存器comsel所代表的功能。当需要多个中断输入源同时复用输出目标时,才需要对公用选择寄存器进行设定。
在一个优选的实施例中,需要在端口P1上同时实现功能I3(例如脉冲宽度测量计数器输入TIM_IN)和功能I4(例如串口的数据接收功能RxD)。在串口数据传送中的波特率改变后,接收方希望在不停用数据接收功能(以防止数据丢失)的情况下利用计数器输入TIM_IN来直接测量波特率,以便快速地进行再同步。
此时,可将端口P1的专用选择寄存器设置为4’d1,以实现例如脉冲宽度测量计数器输入TIM_IN;并且将公用选择寄存器comsel设置为4’d4,以实现数据接收功能RxD。同时,通过设置许可位寄存器来启用第二功能。这样,在设置完外设模块(例如TIM_IN和RxD)之后,脉冲宽度测量计数器输入功能TIM_IN和数据接收功能RxD就可以在端口P1上同时实现了。
与上述两个功能同时复用一个端口的情形类似的,本发明还可实现两个以上功能同时复用一个端口。以三个功能同时复用一个端口为例,可以为需要同时实现三个功能的端口分别设置专用选择寄存器、第一组许可位寄存器和第二组许可位寄存器,并且设置第一公用选择寄存器和第二公用选择寄存器。其中,第一组许可位寄存用于为对应的端口启用或禁用第一公用选择寄存器所选择的功能,第二组许可位寄存器用于为对应的端口启用或禁用第二公用选择寄存器所选择的功能。
本领域技术人员可以理解的是,对于每个端口而言,为其配置的功能许可位寄存器的个数可以不相同。
参考图2和图3,选择电路111包括选择器1、选择器2、选择器3、选择器4,选择器1用于为端口P1选择两个输出功能,选择器4用于为端口P2选择两个输出功能,选择器2用于为端口P1或P2选择输入功能I3,选择器3用于为端口P1或P2选择输入功能I4。输出功能O1、输出功能O2分别向选择器1、选择器4输出信号V11、V12,专用选择寄存器p1sel[1:0]向选择器1、选择器2、选择器3输出信号VS1,专用选择寄存器p2sel[1:0]向选择器2、选择器3、选择器4输出VS2,许可位寄存器p1f2en向选择器1、选择器2输出VEN1,许可位寄存器p2f2en向选择器3、选择器4输出VEN2,公用选择寄存器comsel向选择器1、选择器2、选择器3、选择器4输出VX,选择器1向端口P1输出V21,选择器4向端口P2输出V23,端口P1向选择器2、选择器3输出V22,端口P2向选择器2、选择器3输出V24,选择器2向输入功能I3输出V13,选择器3向输入功能I4输出V14。图3的选择电路111仅为一种示意,选择电路111并不限于图3所示的结构。
图4示出根据本发明的一个实施例的多个中断输入源同时复用输出目标的系统框图。图5为图4中选择电路的示意图。系统2可以为中断控制器,系统2包括多个中断的输入源、多个输出目标和信号选择模块,信号选择模块可以为图1中的信号选择模块110。在图4中系统2包括m个输入源(输入源1、输入源2、…、输入源m)和n个输出目标(输出目标1、…、输出目标n),m和n的取值均为正整数,m、n均可以取值为2、3、4、5、6、7、等等。输入源用于向信号选择模块110发出中断请求信号(例如V11、V12、…、V1m),输入源可以为外设电路模块(例如计时器TIMER、A/D转换器、D/A转换器、输入/输出端口等等)、内设电路模块(例如RAM、FLASH等等)。输出目标可以为译码器,信号选择模块110将选择后的中断请求信号(例如V21、…、V2n、V2X)发送给输出目标,由输出目标向CPU请求中断。
信号选择模块110用于实现多个输入源和多个输出目标之间的信号导通,信号选择模块110包括寄存器模块112和选择电路111,寄存器模块112用于向选择电路111发送指令。选择电路111根据寄存器模块112发出的指令,选择一个或多个输入源和一个或多个输出目标之间的信号导通。
在为每个输出目标设置专用选择寄存器之外,还需设置公用选择寄存器以及用于第二中断的许可位寄存器(在一个输出目标同时复用两个输入源的情形下)。专用选择寄存器用于选择输出目标要实现的第一个中断,公用选择寄存器和许可位寄存器用于选择该输出目标要实现的第二个中断。
许可位寄存器是供每个输出目标专用的,许可位寄存器用于为对应的输出目标启用或禁用公用选择寄存器所选择的功能。公用选择寄存器既是所有输入源公用的,也是全部输出目标公用的。
在一个实施例中,公用选择寄存器与专用选择寄存器可以保持相同的规格。例如,二者可以都采用8位寄存器。这样做的优势包括:避免在原有方案上进行过多的修改。只需简单的电路改动,就可实现多个输入源同时复用一个输出目标。
输出目标1、…、输出目标n分别对应专用选择寄存器t1sel、…、tnsel,专用选择寄存器t1sel、…、tnsel分别为对应的输出目标选择一个输入源,实现一个输出目标的第一个中断。另外,还设置有一个公用选择寄存器comsel,公用选择寄存器comsel用于选择一个输入源的中断发送给任意一个输出目标。许可位寄存器t1s2en、…、tns2en分别对应输出目标1、…、输出目标n,许可位寄存器t1s2en、…、tns2en分别使能对应的输出目标。许可位寄存器t1s2en、…、tns2en和公用选择寄存器comsel配合使用,公用选择寄存器comsel选择一个输入源,许可位寄存器t1s2en、…、tns2en使能一个输出目标,从而建立一个输入源和一个输出目标的连接,实现一个输出目标的第二个中断。许可位寄存器t1s2en、…、tns2en均为1位寄存器。专用选择寄存器t1sel、…、tnsel以及公用选择寄存器comsel均为8位寄存器,故每个输出目标最多可实现256种中断。通过多个输出目标共同使用公用选择寄存器comsel,可以有效地节约寄存器资源。
在上述实施例中,既能实现多个输入源同时复用一个输出目标,又能最大限度地兼容原有的中断选择电路,并且减少硬件电路与软件程序的修改工作量。当只需实现一般的分时复用输出目标时,可通过将许可位寄存器来禁用或屏蔽公用选择寄存器comsel所代表的功能。当需要多个中断输入源同时复用输出目标时,才需要对公用选择寄存器进行设定,并将许可位寄存器来启用公用选择寄存器comsel所代表的功能。
在一个优选的实施例中,需要将输入源1(例如一个通用串口)和输入源2(例如另一个通用串口)的传送错误都映射输出目标1上(例如1号中断),则专用选择寄存器t1sel控制选择电路111将输入源1的中断请求发送到输出目标1;同时,公用选择寄存器comsel控制选择电路111选择输入源2的中断请求,许可位寄存器t1s2en控制选择电路111导通输出目标1,从而将输入源2的中断请求发送到输出目标1。
与上述两个输入源同时复用一个输出目标的情形类似的,本发明还可实现两个以上输入源同时复用一个输出目标。以三个输入源同时复用一个输出目标为例,可以为需要同时实现三个输入源的输出目标分别设置专用选择寄存器、第一组许可位寄存器和第二组许可位寄存器,并且设置第一公用选择寄存器和第二公用选择寄存器。其中,第一组许可位寄存用于为对应的输出目标启用或禁用第一公用选择寄存器所选择的输入源,第二组许可位寄存器用于为对应的输出目标启用或禁用第二公用选择寄存器所选择的输入源。
本领域技术人员可以理解的是,对于每个输出目标而言,为其配置的功能许可位寄存器的个数可以不相同。
参考图4和图5,选择电路111中,输入源1、输入源2、…、输入源m同时向选择器1、…选择器n输出中断选择信号V11、V12…V1m,专用选择寄存器t1sel、…、tnsel分别向选择器1、…、选择器n输出信号VS1、…、VSn,许可位寄存器t1s2en、…、tns2en向选择器n+1输出VEN1、…、VENn,公用选择寄存器comsel向选择器n+1输出VX,选择器1、…选择器n分别输出V21、…、V2n,选择器n+1输出信号V2X。选择电路111还包括n个或门,每一个或门对应一个选择器并对应一个输出目标,选择器1、…、选择器n分别对应或门1、…、或门n,每一个或门的输入分别为其对应选择器的输出信号以及选择器n+1的输出信号,例如:或门1的输入分别为选择器1的输出信号V21和选择器n+1的输出信号V2X、…、或门n的输入分别为选择器n的输出信号V2n和选择器n+1的输出信号V2X。每一个或门分别向对应的输出目标发送信号,例如:或门1向输出目标1发出信号V21’、…、或门n向输出目标n发出信号V2n’。图5的选择电路111仅为一种示意,选择电路111并不限于图5所示的结构。
图6示出根据本发明的一个实施例的多个中断触发源同时复用触发目标的系统框图。图7为图6中选择电路的示意图。系统3可以为自动处理系统,可以根据触发源的信号自动启动触发目标,无需通过通断CPU来启动触发目标,系统3包括多个中断的触发源、多个触发目标和信号选择模块,信号选择模块可以为图1中的信号选择模块110。在图4中系统2包括m个触发源(触发源1、触发源2、…、触发源m)和n个触发目标(触发目标1、…、触发目标n),m和n的取值均为正整数,m、n均可以取值为2、3、4、5、6、7、等等。触发源用于向信号选择模块110发出触发请求信号(例如V11、V12、…、V1m),触发源可以为外设电路模块(例如计时器TIMER、A/D转换器、D/A转换器、输入/输出端口等等)、内设电路模块(例如RAM、FLASH等等)。触发目标可以为外设电路模块(例如计时器TIMER、A/D转换器、D/A转换器、输入/输出端口等等)、内设电路模块(例如RAM、FLASH等等),信号选择模块110将选择后的触发请求信号(例如V21、…、V2n、V2X)发送给触发目标,从而启动触发目标。
信号选择模块110用于实现多个触发源和多个触发目标之间的信号导通,信号选择模块110包括寄存器模块112和选择电路111,寄存器模块112用于向选择电路111发送指令。选择电路111根据寄存器模块112发出的指令,选择一个或多个触发源和一个或多个触发目标之间的信号导通。
在为每个触发目标设置专用选择寄存器之外,还需设置公用选择寄存器以及用于第二触发的许可位寄存器(在一个触发目标同时复用两个触发源的情形下)。专用选择寄存器用于选择触发目标要实现的第一个触发,公用选择寄存器和许可位寄存器用于选择该触发目标要实现的第二个触发。
许可位寄存器是供每个触发目标专用的,许可位寄存器用于为对应的触发目标启用或禁用公用选择寄存器所选择的功能。公用选择寄存器既是所有触发源公用的,也是全部触发目标公用的。
在一个实施例中,公用选择寄存器与专用选择寄存器可以保持相同的规格。例如,二者可以都采用4位寄存器。这样做的优势包括:避免在原有方案上进行过多的修改。只需简单的电路改动,就可实现多个触发源同时复用一个触发目标。
触发目标1、…、触发目标n分别对应专用选择寄存器c1sel、…、cnsel,专用选择寄存器c1sel、…、cnsel分别为对应的触发目标选择一个触发源,实现一个触发目标的第一个触发。另外,还设置有一个公用选择寄存器comsel,公用选择寄存器comsel用于选择一个触发源的触发发送给任意一个触发目标。许可位寄存器c1s2en、…、cns2en分别对应触发目标1、…、触发目标n,许可位寄存器c1s2en、…、cns2en分别使能对应的触发目标。许可位寄存器c1s2en、…、cns2en和公用选择寄存器comsel配合使用,公用选择寄存器comsel选择一个触发源,许可位寄存器c1s2en、…、cns2en使能一个触发目标,从而建立一个触发源和一个触发目标的连接,实现一个触发目标的第二个触发。许可位寄存器c1s2en、…、cns2en均为1位寄存器。专用选择寄存器c1sel、…、cnsel以及公用选择寄存器comsel均为4位寄存器,故每个触发目标最多可实现16种触发。通过多个触发目标共同使用公用选择寄存器comsel,可以有效地节约寄存器资源。
在上述实施例中,既能实现多个触发源同时复用一个触发目标,又能最大限度地兼容原有的触发选择电路,并且减少硬件电路与软件程序的修改工作量。当只需实现一般的分时复用触发目标时,可通过将许可位寄存器来禁用或屏蔽公用选择寄存器comsel所代表的功能。当需要多个触发源同时复用触发目标时,才需要对公用选择寄存器进行设定,并将许可位寄存器来启用公用选择寄存器comsel所代表的功能。
在一个优选的实施例中,如一个计数器TIMER(触发源1)计数到一定值时,需要自动启动A/D转换器(触发目标1)进行变换,则当计数器TIMER计数到一定值时,专用选择寄存器c1sel控制选择电路111将触发源1的触发请求发送到触发目标1;同时,如果一个端口(触发源2)上输入一个由低到高的上升电平时,也需要自动启动A/D转换器(触发目标1)进行变换,则当一个端口上输入一个由低到高的上升电平时,公用选择寄存器comsel控制选择电路111选择触发源2的触发请求,许可位寄存器c1s2en控制选择电路111导通触发目标1,从而将触发源2的触发请求发送到触发目标1。
与上述两个触发源同时复用一个触发目标的情形类似的,本发明还可实现两个以上触发源同时复用一个触发目标。以三个触发源同时复用一个触发目标为例,可以为需要同时实现三个触发源的触发目标分别设置专用选择寄存器、第一组许可位寄存器和第二组许可位寄存器,并且设置第一公用选择寄存器和第二公用选择寄存器。其中,第一组许可位寄存用于为对应的触发目标启用或禁用第一公用选择寄存器所选择的触发源,第二组许可位寄存器用于为对应的触发目标启用或禁用第二公用选择寄存器所选择的触发源。
本领域技术人员可以理解的是,对于每个触发目标而言,为其配置的功能许可位寄存器的个数可以不相同。
参考图6和图7,触发源1、触发源2、…、触发源m同时向选择器1、…选择器n输出触发选择信号V11、V12…V1m,专用选择寄存器c1sel、…、cnsel分别向选择器1、…、选择器n输出信号VS1、…、VSn,许可位寄存器c1s2en、…、cns2en向选择器n+1输出VEN1、…、VENn,公用选择寄存器comsel向选择器n+1输出VX,选择器1、…选择器n分别输出V21、…、V2n,选择器n+1输出信号V2X。选择电路111还包括n个或门,每一个或门对应一个选择器并对应一个触发目标,选择器1、…、选择器n分别对应或门1、…、或门n,每一个或门的输入分别为其对应选择器的输出信号以及选择器n+1的输出信号,例如:或门1的输入分别为选择器1的输出信号V21和选择器n+1的输出信号V2X、…、或门n的输入分别为选择器n的输出信号V2n和选择器n+1的输出信号V2X。每一个或门分别向对应的触发目标发送信号,例如:或门1向触发目标1发出信号V21’、…、或门n向触发目标n发出信号V2n’。图7的选择电路111仅为一种示意,选择电路111并不限于图7所示的结构。
虽然本发明的一些实施方式已经在本申请文件中予以了描述,但是对本领域技术人员显而易见的是,这些实施方式仅仅是作为示例示出的。本领域技术人员可以想到众多的变型方案、替代方案和改进方案而不超出本发明的范围。所附权利要求书旨在限定本发明的范围,并藉此涵盖这些权利要求本身及其等同变换的范围内的方法和结构。
Claims (14)
1.一种信号选择模块,包括:
选择电路,用于有选择地为至少一个第一电路与至少一个第二电路进行信号连接;
寄存器模块,用于向所述选择电路发送所述进行信号连接的指令,它包括:
至少一个专用选择寄存器,用于为对应的第二电路选择一个第一电路进行信号连接,或者为特定的第一电路选择一个第二电路进行信号连接;
至少一个公用选择寄存器,用于为任意一个第二电路选择任意一个第一电路进行信号连接;
至少一个许可位寄存器,与所述至少一个公用选择寄存器配合使用,为对应的第二电路启用或禁用与所述公用选择寄存器所选择的一个第一电路的信号连接。
2.如权利要求1所述的信号选择模块,其特征在于,所述寄存器模块包括由多个所述许可位寄存器组成的一组许可位寄存器,所述一组许可位寄存器与每个所述公用选择寄存器配合使用,为其对应的第二电路启用或禁用与所述公用选择寄存器所选择的一个第一电路的信号连接。
3.如权利要求1所述的信号选择模块,其特征在于,所述寄存器模块包括由多个所述许可位寄存器组成的两组许可位寄存器,所述两组许可位寄存器与两个所述公用选择寄存器配合使用,为其对应的第二电路启用或禁用与所述公用选择寄存器所选择的两个第一电路的信号连接。
4.如权利要求1所述的信号选择模块,其特征在于,所述寄存器模块包括由多个所述许可位寄存器组成的多组许可位寄存器,所述多组许可位寄存器与多个所述公用选择寄存器配合使用,为其对应的第二电路启用或禁用与所述公用选择寄存器所选择的多个第一电路的信号连接。
5.如权利要求1所述的信号选择模块,其特征在于,所述第一电路为外设电路模块、内设电路模块或外设电路模块中的部分电路。
6.一种信号选择系统,包括如权利要求1至5任一所述的信号选择模块,其中,由多个功能对应于多个第一电路,多个端口对应于多个第二电路,所述多个功能包括至少一个输出功能和至少一个输入功能,所述选择电路根据所述寄存器模块发出的指令,选择一个或多个功能与一个或多个端口之间的信号连接。
7.如权利要求6所述的系统,其特征在于,所述输出功能包括输出功能O1、O2,所述输入功能包括输入功能I3、I4,所述端口包括端口P1、P2。
8.如权利要求7所述的系统,其特征在于,所述选择电路包括选择器1至选择器4,其中,选择器1用于为端口P1选择输出功能O1和O2,选择器4用于为端口P2选择输出功能O1和O2,选择器2用于为端口P1或P2选择输入功能I3,选择器3用于为端口P1或P2选择输入功能I4。
9.一种信号选择系统,包括如权利要求1至5任一所述的信号选择模块,其中,多个输入源对应于多个第一电路,多个输出目标对应于多个第二电路,所述输入源向所述信号选择模块发送中断请求信号,所述输出目标接收由所述信号选择模块选择的中断请求信号,并向CPU请求中断。
10.如权利要求9所述的系统,其特征在于,所述信号选择模块的选择电路包括选择器1、…选择器n和选择器n+1以及或门1、…或门n,所述或门1、…或门n的第一输入对应连接所述选择器1、…选择器n的输出,所述或门1、…或门n的第二输入分别连接所述选择器n+1的输出,所述或门1、…或门n的输出对应连接所述输出目标。
11.如权利要求9或10所述的系统,其特征在于,所述输入源为包括计时器TIMER、A/D转换器、D/A转换器、输入/输出端口在内的外设电路模块、或者为包括RAM、FLASH在内的内设电路模块,所述输出目标包括译码器。
12.一种信号选择系统,包括如权利要求1至5任一所述的信号选择模块,其中,多个中断触发源对应于多个第一电路,多个触发目标对应于多个所述第二电路,所述中断触发源向所述信号选择模块发出触发请求信号,所述信号选择模块将选择后的触发请求信号发送给所述触发目标从而启动所述触发目标。
13.如权利要求12所述的系统,其特征在于,所述信号选择模块的选择电路包括选择器1、…选择器n和选择器n+1以及或门1、…或门n,所述或门1、…或门n的第一输入对应连接所述选择器1、…选择器n的输出,所述或门1、…或门n的第二输入分别连接所述选择器n+1的输出,所述或门1、…或门n的输出对应连接所述触发目标。
14.如权利要求12或13所述的系统,其特征在于,所述触发源为包括计时器TIMER、A/D转换器、D/A转换器、输入/输出端口在内的外设电路模块、或者为包括RAM、FLASH在内的内设电路模块,所述触发目标为包括计时器TIMER、A/D转换器、D/A转换器、输入/输出端口在内的外设电路模块,或者为包括RAM、FLASH在内的内设电路模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710999811.0A CN107861900B (zh) | 2017-10-24 | 2017-10-24 | 信号选择模块和信号选择系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710999811.0A CN107861900B (zh) | 2017-10-24 | 2017-10-24 | 信号选择模块和信号选择系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107861900A CN107861900A (zh) | 2018-03-30 |
CN107861900B true CN107861900B (zh) | 2019-12-31 |
Family
ID=61696319
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710999811.0A Active CN107861900B (zh) | 2017-10-24 | 2017-10-24 | 信号选择模块和信号选择系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107861900B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1326148A (zh) * | 2000-05-26 | 2001-12-12 | 索尼公司 | 电子装置,采用该装置的单元,以及系统 |
CN202189359U (zh) * | 2011-07-22 | 2012-04-11 | 鸿富锦精密工业(深圳)有限公司 | 多路复用设备 |
KR20140071212A (ko) * | 2012-12-03 | 2014-06-11 | 삼성전자주식회사 | 입출력 인터페이스의 동작 방법 |
CN105934796A (zh) * | 2014-01-24 | 2016-09-07 | 高通股份有限公司 | 使用端口对端口环回来提供动态随机存取存储器(dram)系统的存储器训练以及相关方法、系统和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10560318B2 (en) * | 2016-01-27 | 2020-02-11 | Oracle International Corporation | System and method for correlating fabric-level group membership with subnet-level partition membership in a high-performance computing environment |
-
2017
- 2017-10-24 CN CN201710999811.0A patent/CN107861900B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1326148A (zh) * | 2000-05-26 | 2001-12-12 | 索尼公司 | 电子装置,采用该装置的单元,以及系统 |
CN202189359U (zh) * | 2011-07-22 | 2012-04-11 | 鸿富锦精密工业(深圳)有限公司 | 多路复用设备 |
KR20140071212A (ko) * | 2012-12-03 | 2014-06-11 | 삼성전자주식회사 | 입출력 인터페이스의 동작 방법 |
CN105934796A (zh) * | 2014-01-24 | 2016-09-07 | 高通股份有限公司 | 使用端口对端口环回来提供动态随机存取存储器(dram)系统的存储器训练以及相关方法、系统和装置 |
Non-Patent Citations (1)
Title |
---|
《基于Verilog HDL的SPI协议可复用IP软核的设计与验证》;李利利;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160331;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107861900A (zh) | 2018-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104142901A (zh) | 一种具有传输优先级的串口复用器实现方法 | |
US20170017584A1 (en) | SPI Interface With Less-Than-8-Bit Bytes And Variable Packet Size | |
US10867363B2 (en) | Device and method for accelerating graphics processor units, and computer readable storage medium | |
US20150046627A1 (en) | Communication on an i2c bus | |
KR20030051834A (ko) | 컴퓨터 시스템에서 다중-레벨 인터럽트 방식을 구현하기위한 시스템 및 방법 | |
KR102549085B1 (ko) | 버스 제어회로 | |
EP3311287A1 (en) | Integrated circuit inputs and outputs | |
CN107861900B (zh) | 信号选择模块和信号选择系统 | |
KR101509423B1 (ko) | 복수의 인터페이스 포트를 갖는 멀티 수신 칩 시스템 | |
CN102736951B (zh) | 一种模块调用方法和装置 | |
CN117215979A (zh) | 总线控制方法、装置、存储介质、终端设备及总线系统 | |
RU2316807C2 (ru) | Управляющая эвм | |
JP4666143B2 (ja) | データ転送処理装置 | |
CN116010308A (zh) | 一种dma数据流仲裁器设计 | |
TWI773247B (zh) | 匯流排系統 | |
JP6837621B1 (ja) | ロボット | |
CN111061674B (zh) | 多处理器交叉通信装置及方法 | |
KR900006548B1 (ko) | 병렬 데이터 공유 방법 및 그 회로 | |
JP2737179B2 (ja) | バスシステム | |
CN108701103B (zh) | 具有工作存储器的计算单元的存储器直接访问控制装置 | |
TWI616754B (zh) | 快捷外設互聯標準(PCIe)資料交換裝置及傳輸系統 | |
KR100331865B1 (ko) | 다수의 보드간 데이터 송수신 방법 | |
US10089156B2 (en) | Electronic device for synchronizing tasks of an electronic appliance | |
JP2000078226A (ja) | 多入力通信アダプタ― | |
JP2006201832A (ja) | データ転送処理装置 |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221212 Address after: 201210 floor 10, block a, building 1, No. 1867, Zhongke Road, pilot Free Trade Zone, Pudong New Area, Shanghai Patentee after: Xiaohua Semiconductor Co.,Ltd. Address before: 201203 room 303-304, block a, No. 112, liangxiu Road, pilot Free Trade Zone, Pudong New Area, Shanghai Patentee before: HUADA SEMICONDUCTOR Co.,Ltd. |
|
TR01 | Transfer of patent right |