专利名称:一种易于存取的多端口结构及其操作方法
技术领域:
本发明有关于一种存取结构设计,特别涉及一种多端口(ports)的存取结构及其操作方法。
背景技术:
随着高科技时代的来临,个人用电子记事簿装置亦即个人数字助理(Personal Digital Assistant,PDA)渐成为一种流行而且必须的电子产品。所谓个人数字助理具有以下功能储存个人资料、名片管理、时间管理、个人行程追踪设定及行事记要等,但这些资料的管理对于要求资讯快速传输的现代,已渐渐不能满足使用者的需求,因此又发展出有电子字典及股市即时报导等功能。
因此对于使用者来说,已渐要求拥有大储存能力与具可扩充性的个人数字助理。当操作系统和程序复杂性增加时、当使用者欲储存更多的资料时和当所欲储存的资料更复杂时,个人数字助理储存空间的要求和软件的可更新的能力即随之增加。为了获得更多的储存空间,或是增加可扩充性,大多数的个人数字助理会设计一扩充端口来外接一扩充卡,此扩充卡可为一存储卡,或是一应用软件的卡夹,藉此来增加个人数字助理的储存空间。
然而,单端口的扩充作用对于使用者来说仍不足够,例如当此扩充端口插入一应用软件卡夹时,当执行此扩充端口的软件时,若需额外的存储空间来储存大量资料时,显然,单一扩充端口并不能符合所有使用者的需求。因此,对于具有双端口功能的个人数字助理,即纷纷出现于市面上。
在设计具有双端口功能,甚至多端口功能的个人数字助理常会遇到一个问题,例如若其中一个扩充槽插入一扩充卡夹,另一扩充槽则插入另一扩充卡夹,此时如何分辨这两扩充卡夹,来选取正确卡夹进行存取,即成为设计上的大问题。传统上是使用一定址线(address line),同时创造出另一组暂存器(register)来储存另一端口的状态,或是将原本单端口的暂存器,直接区分成双端口,但这一作法均需使用额外的定址线,明显的,上述两种方法其登记地址(register address)与单端口设计相较并不相同,因此其驱动程序需再加以修改,且多条定址线在电路设计上更增其困难。
发明内容
鉴于上述传统双端口/多端口个人数字助理在设计上常会遇到一个问题,即需多使用一条定址线以产生定址空间,因此其驱动程序需再加以修改,且多条定址线在电路设计上更增其困难,因此本发明针对上述的缺点提出一种多端口结构,使用一通用型暂存器(Global register)来对多个端口进行切换,保留各个端口相同的定址地址,因此驱动程序不必做任何修改,可增加维护上的便利性。
本发明的一种易于存取的多端口结构具有N个端口,一中央处理器可使用该多端口结构的多个端口,该多端口结构至少包括N个暂存区块分别用以储存该N个端口的操作值,其中每一端口的操作值至少包含一状态值;一通用暂存器,用以储存一控制值与映射(N-1)个状态值;一地址解码器,连接该中央处理器,用以将一地址信号进行解码;以及一选择器,可根据该通用暂存器内的控制值将相对应的暂存区块连接至该地址解码器,以供该中央处理器进行存取。
根据本发明的上述结构,还包括有一资料多工器与所述通用暂存器和N个暂存区块相连接,用来选择映射至暂存器的暂存区块。
根据本发明的上述结构,还包括有一选择电路与所述通用暂存器和所述资料多工器相连接,用以控制所述的资料多工器。
根据本发明的上述结构,当N=2时,所述多端口结构包括有第一暂存区块和第二暂存区块,当第一暂存区块连接至地址解码器时,第二暂存区块的状态值会映射至所述通用暂存器。
根据本发明的上述结构,当N=2时,所述多端口结构包括有第一暂存区块和第二暂存区块,当第二暂存区块连接至地址解码器时,第一暂存区块的状态值会映射至所述通用暂存器。
根据本发明的上述结构,所述N个暂存区块具有相同的地址空间。
本发明另提供一种多端口结构的存取方法,该多端口结构包括有多个暂存区块,分别储存多个端口的操作值,其中每一操作值至少包含一状态值;一通用暂存器,至少储存一控制值;一中央处理器可使用多端口结构中的多个端口之一进行数据存取,该存取方法为根据该通用暂存器内的控制值将该多个暂存区块其中之一连接至该中央处理器,以供该中央处理器进行存取;根据该通用暂存器内的控制值将该其余暂存区块连接至该通用暂存器,以将所储存的状态值映射至该通用暂存器。
根据本发明的上述方法,所述映射是指将该暂存区块所储存的状态值映射至该通用暂存器中。
根据本发明的上述方法,所述的多个暂存区块具有相同的地址空间。
根据本发明的上述方法,还包括有使用一资料多工器来选择映射至通用暂存器中的暂存区块的步骤。
图1所示为本发明双端口选择电路方框图。
图2所示为本发明双端口暂存区块地址示意图。
图3所示为本发明双端口选择电路另一方框图。
图4所示为本发明依照图3双端口选择电路设计结构下的暂存区块地址示意图。
图5所示为使用本发明的结构于多端口中的结构示意图。
图6所示为本发明多端口暂存区块地址示意图。
图7所示为本发明多端口选择电路设方框图。
图8所示为本发明依照图7多端口选择电路设计结构下的暂存区块地址的示意图。
具体实施例方式
根据本发明的设计结构其定址方法与单端口相同,因此对于驱动程序的设计,可沿用单端口的设计,增加其简易性,与维护的方便。以下即以一具双端口设计的个人数字助理的实施例来介绍本发明的电路设计,但值得注意的是本发明的实施当不仅限于双端口结构中,其他多端口结构的设计,亦可适用下述的实施例。
参考图1所示,为本发明双端口结构100的概略图,于此双端口结构中,假设此双端口分别为端口A与端口B,均有各自的暂存区块,其中暂存区块110为端口A的暂存区块,而暂存区块112为端口B的暂存区块,此两暂存区块是使用相同的地址,其中暂存区块110与112通常会具有状态暂存器(statusregister)控制暂存器(control register)、资料输入暂存器(data inregister)、资料输出暂存器(data out register)和输入/输出控制暂存器(I/O control register)。本发明另外使用一组通用暂存器104,用以储存由端口A或端口B映射的状态值与控制值。
当进行存取时,中央处理器114会根据通用暂存器104内的控制值,对端口A或端口B进行存取,而未被中央处理器114进行存取的端口,会将其暂存区块内的状态值映射在通用暂存器104中,因此中央处理器114即可由通用暂存器104中得知其状态。
本发明另外亦包括一资料多工器106与一地址选择器108,其中地址选择器108的作用是用来选择暂存区块,以供中央处理器114存取,而资料多工器106是用来选择映射至通用暂存器104的暂存区块。而一地址解码器102,是让中央处理器114通过此地址解码器102,进行地址信号的解码后,通过通用暂存器104,来控制资料多工器106与地址选择器108以选取其中一个端口进行存取,并将另一端口暂存区块内的状态值映射至通用暂存器104。然而,值得注意的是,若通用暂存器104具有足够的空间,则可将端口A与端口B的状态值直接映射至通用暂存器104内,而不必使用多工器106。
例如当通用暂存器104内暂存的控制值为“0”时,亦即端口A为此时中央处理器所欲存取的端口,此时中央处理器114会通过地址解码器102选定暂存区块110,亦即端口A作为中央处理器114的存取端口。另一方面,通过资料多工器106,暂存区块112内的状态值即会被映射至通用暂存器104。此时中央处理器114,只需通过此地址解码器102,不仅可选取端口A来执行存取,亦可了解端口B的状态。
同理,当通用暂存器104内暂存的控制值为“1”时,亦即端口B为中央处理器所欲存取的端口,此时通过地址选择器108,中央处理器114即会选择暂存区块112,亦即端口B作为中央处理器114的存取端口。另一方面,通过资料多工器106,暂存区块110内的状态值即会被映射至通用暂存器104。此时中央处理器114,只需通过此地址解码器102,不仅可选取端口B来执行存取,亦可了解端口A的状态。然值得注意的是,布林代数值的设定是可由使用者自订的,且若通用暂存器104具有足够的空间,亦可将端口A与端口B的状态值直接映射至通用暂存器104内,而不使用多工器106。
参阅图2所示,为根据本发明端口A与端口B暂存区块地址安排的示意图,此两暂存区块是使用相同的地址,其中假设端口A的状态值(status)和控制值(control)等分别储存于地址xxx000至xxx101,则通用暂存器可安排于地址xxx110与xxx111中,此通用暂存器用以储存由端口A或端口B映射的状态值与一控制值。当通用暂存器地址xxx111中所储存的端口A端口B选择信号设定为端口A可存取时,端口B的状态值(status)会映射至地址xxx110,因此中央处理器于存取端口A的资料时,亦可同时获知端口B的状态。
反之,若通用暂存器地址xxx111中所储存的端口A端口B选择信号设定为端口B可存取时,端口A的状态值(status)会映射至地址xxx110,因此中央处理器于存取端口B的资料时,亦可同时获知端口A的状态。
另一方面,本发明的发明双端口结构100,若通用暂存器104具有足够的地址空间,可以让端口A与端口B的状态值同时映射至通用暂存器104时,则亦可不使用资料多工器106,此时的双端口结构如图3所示,当进行此双端口结构的存取时,中央处理器114会根据通用暂存器104内的控制值,对端口A或端口B进行存取,同时将端口A与端口B暂存区块内的状态值一起映射在通用暂存器104中,此时中央处理器114即可由通用暂存器104中一起得知端口A与端口B的状态。
参阅图4所示,为根据本发明图3的双端口结构其端口A与端口B暂存区块的地址安排示意图,此两暂存区块是使用相同的地址,其中假设端口A的状态值(status)和控制值(control)等分别储存于地址xxx000至xxx100,则通用暂存器可安排于地址xxx101至xxx111中,此时通用暂存器则可同时储存由端口A与端口B一起映射的状态值与一控制值。例如,当通用暂存器地址xxx111中所储存的端口A端口B选择信号设定为端口A可存取时,此时依此结构端口A与端口B的状态值(status)会同时映射至地址xxx101与xxx110中,因此中央处理器于存取端口A的资料时,即可同时获知端口A与端口B的状态。
同理,若通用暂存器地址xxx111中所储存的端口A端口B选择信号设定为端口B可存取时,此时在此结构下,端口A与端口B的状态值(status)会同时映射至地址xxx101与xxx110中,因此中央处理器于存取端口B的资料时,即可同时获知端口A与端口B的状态。
值得注意的是,上述所述的实施例虽仅使用于双端口设计中,但本发明亦可扩充至多端口设计中,其主要的结构均不变,仍是使用一通用暂存器来选择一个要被存取的端口,而其余的端口则将其暂存区块内的状态值映射至通用暂存器内,如此中央处理器可使用同一地址进行存取,不仅可选取到欲执行的端口来进行存取,亦可了解其余端口的状态,而其选择端口的电路设计可使用传统的选择电路来达成。
例如对于一个具四个端口的电路设计结构可如图5所示,其中于此系统中,假设此四个端口分别为端口A、端口B、端口C与端口D,均有各自的暂存区块,其中暂存区块310为端口A的暂存区块,暂存区块312为端口B的暂存区块,暂存区块314为端口C的暂存区块,而暂存区块316为端口D的暂存区块,此四暂存区块使用相同的地址。同样的,使用一通用暂存器304,用以储存由端口A、端口B、端口C或端口D所映射的状态值与一控制值,其系选择所欲进行存取的端口。当进行存取时,中央处理器300会根据通用暂存器304内的控制值,对端口A、端口B、端口C或端口D其中之一进行存取,而未被中央处理器存取的端口,会将其暂存区块内的状态值映射在通用暂存器304中,如此中央处理器于存取的过程中,即可由通用暂存器304中了解其他端口的状态。
同样的,一资料多工器306,可由一选择电路318控制,用来选择映射至通用暂存器304的暂存区块,而一地址选择器308用来选择暂存区块,以供中央处理器存取。当中央处理器通过此地址解码器302,进行地址信号的解码后,可通过通用暂存器304,来控制地址选择器308与资料多工器306以选取其中一个端口进行存取,并将其余三端口暂存区块内的状态值映射至通用暂存器304。当然,若通用暂存器304具有足够的空间,则可将端口A、端口B、端口C与端口D的状态值直接映射至通用暂存器304内,而不必使用多工器306。
参阅图6所示为端口A、端口B、端口C与端口D暂存区块地址安排示意图,此四暂存区块是使用相同的地址,其中若端口A的状态值(status)和控制值(control)等分别储存于地址xxx0000至xxx1011,则可安排地址xxx1100至xxx1111为一通用暂存器,分别用以储存由端口A、端口B、端口C或端口D所映射的状态值与一控制值。当通用暂存器地址xxx1111中所储存的控制值切换中央处理器存取端口A的资料时,则其余三端口的的状态值(status)会映射至地址xxx1100至xxx1110。因此当中央处理器于存取端口A的资料时,亦可同时获知其余端口的状态。其中通用暂存区块资料安排结构并不仅限于其上所述。
例如,若所设计的通用暂存器304具有足够的地址空间,可以让端口A、端口B、端口与端口D的状态值同时映射至通用暂存器304时,则可不使用资料多工器306与选择电路318,此时的多端口结构如图7所示。当进行此多端口结构的存取时,中央处理器300会根据通用暂存器304内的控制值,对端口A、端口B、端口C或端口D其中之一进行存取,同时将端口A、端口B、端口C与端口D暂存区块内的状态值一起映射在通用暂存器304中,如此中央处理器于存取的过程中,亦可由通用暂存器304中了解所有端口的状态。
参阅图8所示,为根据本发明图7的多端口结构其端口A、端口B、端口C与端口D暂存区块的地址安排示意图,此四暂存区块是使用相同的地址,其中若端口A的状态值(status)和控制值(control)等分别储存于地址xxx0000至xxx1010,则可安排地址xxx1011至xxx1111为一通用暂存器,分别用以储存由端口A、端口B、端口C与端口D所映射的状态值与一控制值。例如,当通用暂存器地址xxx1111中所储存的控制值切换中央处理器存取端口A的资料时,此时在此结构下,端口A、端口B、端口C与端口D的状态值(status)会分别映射至地址xxx1011至xxx1110。因此当中央处理器于存取端口A的资料时,亦可获知所有端口的状态。
本发明利用一通用型暂存器来对双端口或多端口进行切换,保留各个端口相同的定址地址。由于各个端口的定址地址完全相同,驱动程序不必做任何修改,因此于驱动程式的维护上更显便利。再加以本发明于多端口的电路设计上,不需使用额外的定址线,因此其电路设计的复杂度可大为降低。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围的内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
权利要求
1.一种易于存取的多端口结构,其特征在于该多端口结构具有N个端口,一中央处理器可使用该多端口结构的多个端口,该多端口结构至少包括N个暂存区块分别用以储存该N个端口的操作值,其中每一端口的操作值至少包含一状态值;一通用暂存器,用以储存一控制值与映射(N-1)个状态值;一地址解码器,连接该中央处理器,用以将一地址信号进行解码;以及一选择器,可根据该通用暂存器内的控制值将相对应的暂存区块连接至该地址解码器,以供该中央处理器进行存取。
2.如权利要求1所述的一种易于存取的多端口结构,其特征在于还包括有一资料多工器与所述通用暂存器和N个暂存区块相连接,用来选择映射至暂存器的暂存区块。
3.如权利要求2所述的一种易于存取的多端口结构,其特征在于还包括有一选择电路与所述通用暂存器和所述资料多工器相连接,用以控制所述的资料多工器。
4.如权利要求1或2或3所述的一种易于存取的多端口结构,其特征在于当N=2时,所述多端口结构包括有第一暂存区块和第二暂存区块,当第一暂存区块连接至地址解码器时,第二暂存区块的状态值会映射至所述通用暂存器。
5.如权利要求1或2或3所述的一种易于存取的多端口结构,其特征在于当N=2时,所述多端口结构包括有第一暂存区块和第二暂存区块,当第二暂存区块连接至地址解码器时,第一暂存区块的状态值会映射至所述通用暂存器。
6.如权利要求1所述的一种易于存取的多端口结构,其特征在于所述N个暂存区块具有相同的地址空间。
7.一种多端口结构的存取方法,该多端口结构包括有多个暂存区块,分别储存多个端口的操作值,其中每一操作值至少包含一状态值;一通用暂存器,至少储存一控制值;一中央处理器可使用多端口结构中的多个端口之一进行数据存取,该存取方法为根据该通用暂存器内的控制值将该多个暂存区块其中之一连接至该中央处理器,以供该中央处理器进行存取;根据该通用暂存器内的控制值将该其余暂存区块连接至该通用暂存器,以将所储存的状态值映射至该通用暂存器。
8.如权利要求7所述的一种多端口结构的存取方法,其特征在于所述映射是指将该暂存区块所储存的状态值映射至该通用暂存器中。
9.如权利要求7所述的一种多端口结构的存取方法,其特征在于所述的多个暂存区块具有相同的地址空间。
10.如权利要求7所述的一种多端口结构的存取方法,其特征在于还包括有使用一资料多工器来选择映射至通用暂存器中的暂存区块的步骤。
全文摘要
本发明有关一种多端口结构,其中每一个端口均有各自的暂存区块,另使用一通用暂存器,可根据应用软件的指示,而自动切换所需的端口让中央处理器进行存取,而其余未被使用的端口,则将其状态值映射在通用暂存器中。
文档编号G06F3/00GK1641537SQ20041000060
公开日2005年7月20日 申请日期2004年1月13日 优先权日2004年1月13日
发明者黄拔忠, 卢协益 申请人:华邦电子股份有限公司