專利名稱:一種基于矩陣的芯片端口映射方法
技術(shù)領(lǐng)域:
本發(fā)明涉及集成電路數(shù)字處技術(shù)領(lǐng)域,尤其是基于矩陣結(jié)構(gòu)的芯片端口映 射的實現(xiàn)方法。
背景技術(shù):
端口復用是芯片設(shè)計所使用的通用技術(shù)之一。其通常所采用的方法就是通 過簡單的把幾個功能端口的復用到一個芯片端口,通過寄存器的配置,來實現(xiàn) 端口功能的選擇。
這種通用方法的一個明顯不足就是缺乏靈活性,從而導致了一定程度降低 了芯片的應(yīng)用。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺點,提供一種基于矩陣的芯片端口映 射方法,通過寄存器配置來控制復用矩陣邏輯,把一組端口映射到特定的芯片 管腳上,大大提高芯片管腳的效率,減少芯片管腳的數(shù)量。
本發(fā)明所要解決的技術(shù)問題是如何采用一種簡單有效的方法,在實現(xiàn)芯片 相同功能的情況下,針對不同的應(yīng)用場合,采用不同的端口映射方法,提高芯 片管腳的效率,減少芯片管腳的數(shù)量,結(jié)構(gòu)簡單又易于實現(xiàn)。
基于矩陣結(jié)構(gòu)的芯片端口映射的實現(xiàn)方法,該方法通過寄存器配置和硬件
復用控制矩陣邏輯,可以把任意功能的I/O (輸入/輸出)復用到芯片不同管腳
上,實現(xiàn)芯片端口的映射。為了減少控制矩陣邏輯規(guī)模,把N個I/0定義為一
個功能組,根據(jù)芯片功能需要,把芯片功能的I/O進行排列組合產(chǎn)生M個功能 組,根據(jù)芯片可用管腳數(shù)量,定義K個I/0端口組(每個端口組包含N個I/0),
構(gòu)造邏輯電路,通過寄存器配置,實現(xiàn)從M'功能組到K7端口組的映射,同時端 口組每個I/0也可以單獨定義成GP10。包括如下步驟
步驟l:定義N個I/0為一個功能組;
步驟2:根據(jù)芯片功能,定義P個功能,每個功能包含一定數(shù)量的I/O; 步驟3:把P個功能中一部分功能進行排列組合組成一個功能組,這個功能 組的I/O總的數(shù)量不超過N個I/O;
步驟4:重復步驟3產(chǎn)生M個功能組;
步驟5:根據(jù)芯片可用管腳數(shù)量,定義K個I/0端口組,每個端口組包含N
個I/0;
步驟6:構(gòu)造控制復用矩陣邏輯電路,可通過寄存器配置實現(xiàn)從M'功能組 到K7端口組的映射;
步驟7:構(gòu)造邏輯電路,可通過寄存器配置把功能組M'中的1/0設(shè)置成功
能1/0,或者設(shè)置成GPIO (本專業(yè)使用的術(shù)語)。
可以把任意功能映射某一組芯片管腳上,也可以把任意功能映射到任意組 芯片管腳上,可以提高芯片管腳的效率,減少芯片管腳的數(shù)量。
假設(shè)我們設(shè)計一款芯片包含如下功能MAC、 LCD、 12S、 NAND、 SD/MMC、 NOR Flash、 Keypad、 ITU IN (以上模塊均為本專業(yè)使用的模塊)等模塊。為了節(jié)約 封裝成本,并盡量使芯片小型化,我們把芯片封裝成包含108個管腳芯片,其
中芯片包含多組電源和地、JTAG、SDRAM的地址和數(shù)據(jù)總線等模塊是系統(tǒng)必須的, 這些模塊管腳不必復用,這些功能總計需要占用60個管腳,剩下48個管腳可 用于MAC、 LCD、 12S、 NAND、 SD/醒C、 N0R Flash、 Keypad、 ITU IN等功能組的 復用,根據(jù)以上步驟實現(xiàn)芯片功能與管腳的復用,步驟如下
所述步驟1:根據(jù)可供復用的管腳數(shù)量為T (范圍為1到1000,如48,但 不限于此)個以及各模塊管腳數(shù)量,把N (范圍為1到1000,如12,但不限于 此)個I/0定義為l個功能組。
如可供復用的管腳數(shù)量為48個以及各模塊管腳數(shù)量,把12個I/O定義為1 個功能組。
所述步驟2:根據(jù)芯片功能,確定芯片包含哪些模塊,如MAC、 LCD、 12S、 NAND、 SD/畫C、 NOR Flash、 Keypad、 ITU IN、 ITU OUT、 TV 0UT、 S謹、AC97、 UART、 SSP、 SPI、 USB、 CAN、 RS485、 RS232、 FlaxRaw、 FlexIO、 SDIO、 SATA、 1394、 WLAN、 Bluetooth、 Irda、 PS、 SDRAM、 DDR、 DDR 2、 S謹、CEATA、 CF、 IDE、 e腿C、 XD、 MemoryStick、 SPDIF模塊,但不限于此;確定每個功能組的 1/0數(shù)量,每個模塊的I/0數(shù)量根據(jù)需要確定,如其中MAC有12個I/0、 12S有 4個I/O、 NAND有16個I/O、 Keypad有12個I/O、 ITU IN有11個I/O。(它的 數(shù)據(jù)線與NAND共用,所以只有4個I/O) 、 NOR Flash有12個1/0、 Keypad有12 個1/0、 ITU IN有11個I/0。但不限于此。
所述步驟3和步驟4:根據(jù)產(chǎn)品需要,定義如下的M(范圍為1到1000,如 9,但不限于此)個功能組,每個功能組擁有不超過N個1/0,定義如下的9個功 能組,每個功能組擁有不超過12個1/0,為了描述方便,把MAC的12個I/0寫 成mac [ 11:0] , LCD的20個I/O寫成led [ 19:0] , I2S的4個I/O寫成i2s [3:0], ITU IN的11個I/O寫成itu_in[10:0],同時mac[O]表示為MAC的第0個1/0, mac[5]表示為MAC的第5個1/0, led[15:12]表示為LCD的第12到第15個1/0, keypad[5:2]表示為Keypad的第2到第5個I/O。某個功能組n由模塊1的第a 至第b個I/0,模塊2的第c至第d個I/0,模塊3的第e至第f個I/0組成, 則這個功能組表示成功能組m模塊l[b:a]、模塊2[d:c]、模塊3[f:e]。
所述9個功能組分別為
功能組l:mac[ll:O]
功能組2:i2s[3:0]、 lcd[19:12]
功能組3:lcd[ll:O]
功能組4:n肌d[15:4]
功能組5:nand[3:0]、 sdmmc[3:0]、i2s[3:0]
功能組6:norflash[ll:O]
功能組7:keypad[11:0]
功能組8:itu—in[10:0]
功能組9:nand[3:0]、 lcd[19:12]。
所述步驟5:由于可供復用的管腳數(shù)j匱為T (范圍為1到1000,如48,但
不限于此)個,N (范圍為1到1000,如12,但不限于此)個I/O定義為1個 功能組,所以芯片只有K二T/N((范圍為I到IOOO,如4,但不限于此)個1/0 端口組,也就是說在某個具體應(yīng)用用,最多只能把以上M個功能組中的K個功 能組映射到芯片管腳上。
如由于可供復用的管腳數(shù)量為48個,把12個I/O定義為1個功能組,所 以芯片只有4個I/O端口組,也就是說在某個具體應(yīng)用用,最多只能把以上9 個功能組中的4個功能組映射到芯片管腳上。
所述步驟6:構(gòu)造控制復用矩陣邏輯電路,設(shè)計了 K (范圍為1到1000,如 4,但不限于此)個配置寄存器用來實現(xiàn)功能組到端口組的映射,如芯片共用108 個管腳,其中49至ljl08管腳用于通用的目的,l到48管腳用于端口復用,分成 4組,其中PAD Group 0包含1到12管腳,其中PAD Group 1包含13到24管 腳,其中PAD Group 2包含25到36管腳,其中PAD Group 3包含37到48管 腳,芯片中設(shè)計了如下寄存器PADOCTL、 PAD1CTL、 PAD2CTL、 PAD3CTL控制復用 矩陣邏輯電路,用來實現(xiàn)功能組到端口組的映射;設(shè)置PAD0CTL等于7,則表示 功能組7的Keypad的12個1/0映射到芯片的管腳1到管腳12 (PAD Group 0), 設(shè)置PAD3CTL等于2,則表示功能組2映射到PAD Group 3,即的I2S的4個1/0 映射到芯片的管腳45到管腳48和功能組2的LCD的第13個1/0到第20個1/0 映射到芯片的管腳37到管腳44。
所述步驟7:構(gòu)造邏輯電路,設(shè)計了 M(范圍為1到1000,如9,但不限于 此)個寄存器配置把功能組中的I/0設(shè)置成功能1/0,或者設(shè)置成GPIO。如在芯 片中設(shè)計了 9個PAD模式寄存器,分別為PADM0DE1、 PADM0DE2到PADM0DE9,這 9個寄存器的bit0到bit 11分別控制功能組的每一個I/O是否為GPIO (1是GPIO, 0是功能I/0);如要把功能組5中的第5到8個I/0設(shè)置成GPI0,只需要設(shè)置 寄存器PADMODE5等于0x0f0即可。
在某個應(yīng)用中需要使用NAND、 I2S、 Keypad,通過設(shè)置PADOCTL等于4、
PADICTL等于5、 PAD2CTL等于7,就可把NAND、 I2S、 Keypad映射到芯片管腳 上,其中功能組5中的sdmmc[3:0]不需要使用,它對應(yīng)的管腳為管腳17到20, 就可用作GPIO,只需要設(shè)置寄存器PADM0DE5等于OxOfO即可。 本發(fā)明的有益效果為
本發(fā)明采用一種簡單有效的方法,在實現(xiàn)芯片相同功能的情況下,針對不 同的應(yīng)用場合,采用不同的端口映射方法,提高芯片管腳的效率,減少芯片管 腳的數(shù)量,結(jié)構(gòu)簡單又易于實現(xiàn)。
本發(fā)明的顯著有益效果在于芯片本身包含許多功能,為實現(xiàn)這些功能, 可能需要非常多的I/0管腳,但針對特定的應(yīng)用場合一,可能需要功能一、二、 三,功能四、五不需要使用,而應(yīng)用場合二,可能需要功能二、三、五,功能 一、四不需要使用,如果芯片把所有功能封裝出來,則可能增加封裝成本和封 裝芯片的面積,如果芯片只把部分功能封裝出來,則只能應(yīng)用到特定的場合, 其它應(yīng)用需要另作封裝。如果采用本發(fā)明的方法,則采用較少封裝實現(xiàn)最大的 功能,不同的端口復用方法針對不同的市場應(yīng)用,降低了成本,增加了芯片的 最大的靈活性。
圖1為基于矩陣結(jié)構(gòu)的芯片端口映射的硬件結(jié)構(gòu)實現(xiàn)原理圖。 圖2為基于矩陣的芯片端口映射方法的流程圖。
具體實施例方式
下面參考說明書附圖,具體說明本發(fā)明的實現(xiàn)過程。
圖1為基于矩陣結(jié)構(gòu)的芯片端口映射的硬件結(jié)構(gòu)實現(xiàn)原理圖; 本發(fā)明所述的基于矩陣結(jié)構(gòu)的端口映射的實現(xiàn)方法。
功能組的定義根據(jù)定義,將N個不同功能I/0定義為功能組。不同的功
能組可以包括相同的I/O。
端口組的定義根據(jù)芯片可用管腳數(shù)量T和一個功能組的1/0數(shù)量N,則端 口組的數(shù)量K二T/N。
矩陣的形成和控制功能組選擇寄存器控制功能組到端口組的映射,端口 模式寄存器可把管腳配置成功能腳或GPIO。通過配置,使得每個端口可以靈活 配置成不同的功能組或GPIO。
下面參考說明書附圖,具體說明本發(fā)明的實現(xiàn)過程。
假設(shè)我們設(shè)計一款芯片包含如下功能MAC、 LCD、 12S、 NAND、 SD/醒C、 NOR Flash、 Keypad、 ITUIN等模塊。為了節(jié)約封裝成本,并盡量使芯片小型化,我 們把芯片封裝成包含108個管腳芯片,其中芯片包含多組電源和地、JTAG、 SDRAM 的地址和數(shù)據(jù)總線等模塊是系統(tǒng)必須的,這些模塊管腳不必復用,這些功能總 計需要占用60個管腳,剩下48個管腳可用于MAC、 LCD、 12S、 NAND、 SD/醒C、 NOR Flash、 Keypad、 ITU IN等功能組的復用。
步驟l:確定每個功能組的I/0數(shù)量;
根據(jù)可供復用的管腳數(shù)量為T (范圍為1到1000,如48,但不限于此)個 以及各模塊管腳數(shù)量,把N (范圍為1到1000,如12,但不限于此)個I/O定 義為1個功能組。
如可供復用的管腳數(shù)量為48個以及各模塊管腳數(shù)量,把12個I/O定義為1
個功能組。
步驟2:確定芯片功能模塊,及每個功能的I/0數(shù)量;
根據(jù)芯片功能,確定芯片包含MAC、 LCD、 12S、 NAND、 SD/薩C、 NORFlash、 Keypad、 ITU IN等模塊,確定每個功能組的I/O數(shù)量,其中MAC有12個I/O、 LCD有20個I/O、 I2S有4個1/0、 NAND有16個I/O、 SD/MMC有4個I/O (它的 數(shù)據(jù)線與N認D共用,所以只有4個I/O) 、 NOR Flash有12個1/0、 Keypad有12 個1/0、 ITU IN有11個I/0。但不限于此。
步驟3和步驟4:產(chǎn)生功能組;
根據(jù)產(chǎn)品需要,定義如下的M(范圍為l到lOOO,如9,但不限于此)個功能 組,每個功能組擁有不超過N個1/0,我們定義如下的9個功能組,每個功能組 擁有不超過12個I/0,為了描述方便,我們把MAC的12個I/0寫成mac[ll:0], LCD的20個I/0寫成lcd[19:0], I2S的4個I/O寫成i2s[3:0] , ITUIN的ll 個I/O寫成itu—in[10:0],其它以此類推,同時mac[O]表示為MAC的第0個1/0, mac[5]表示為MAC的第5個1/0, lcd[15:12]表示為LCD的第12到第15個1/0, keypad[5:2]表示為Keypad的第2到第5個I/O。如某個功能組由模塊1的第a 至第b個I/0,模塊2的第c至第d個I/0,模塊3的第e至第f個I/0組成, 則這個功能組表示成
功能組n:模塊l[b'.a]、模塊2[d:c]、模塊3[f:e]
芯片包含的9個功能組,分別為
功能組l: mac[ll:O]
功能組2: i2s[3:0]、 lcd[19:12]
功能組3: lcd[ll:0] 功能組4: nand[15:4]
功能組5:腦d[3:0]、 sd獄[3:0]、 i2s[3:0]
功能組6: norflash[ll:O]
功能組7: keypad[11:0]
功能組8: itu—in[10:0]
功能組9:麵d[3:0]、 led[19:12]
步驟5:確定芯片I/0端口組的數(shù)量
由于可供復用的管腳數(shù)量為T (范圍為1到1000,如48,但不限于此)個, N (范圍為1到1000,如12,但不限于此)個I/O定義為1個功能組,所以芯 片只有K二T/N((范圍為I到IOOO,如4,但不限于此)個I/0端口組,也就是 說在某個具體應(yīng)用用,最多只能把以上M個功能組中的K個功能組映射到芯片 管腳上。
如由于可供復用的管腳數(shù)量為48個,把12個I/O定義為1個功能組,所 以芯片只有4個I/0端口組,也就是說在某個具體應(yīng)用用,最多只能把以上9 個功能組中的4個功能組映射到芯片管腳上。
步驟6:構(gòu)造控制復用矩陣邏輯電路,可通過寄存器配置來控制復用矩陣邏 輯,實現(xiàn)從功能組到端口組的映射。
設(shè)計了 K (范圍為1到1000,如4,但不限于此)個配置寄存器用來實現(xiàn)功 能組到端口組的映射,如芯片共有108個管腳,其中49到108管腳用于通用的 目的,不能用于復用,l到48管腳用于端口復用,分成4組,其中PAD Group 0
包含1到12管腳,其中PAD Group 1包含13到24管腳,其中PAD Group 2包 含25到36管腳,其中PAD Group 3包含37到48管腳,構(gòu)造控制復用矩陣邏 輯電路,芯片中設(shè)計了如下寄存器PADOCTL(控制PAD Gro叩0) 、 PADICTL(控制 PAD Group 1)、 PAD2CTL(控制PAD Group 2)、 PAD3CTL (控制PAD Group 3)控制 復用矩陣邏輯電路,用來實現(xiàn)功能組到端口組的映射。如設(shè)置PADOCTL等于7, 則表示功能組7的Keypad的12個I/O映射到芯片的管腳1到管腳12 (PAD Group 0),設(shè)置PAD3CTL等于2,則表示功能組2映射到PAD Group 3,即的I2S的4 個1/0映射到芯片的管腳45到管腳48和功能組2的LCD的第13個1/0到第20 個1/0映射到芯片的管腳37到管腳44。
假設(shè)有一個應(yīng)用需要使用MAC、 LCD、 NAND功能,通過設(shè)置PADOCTL等于1、 PADICTL等于3、 PAD2CTL等于4、 PAD3CTL等于9,就可把MAC、 LCD、 NAND映 射到芯片管腳上。另一個應(yīng)用需要使用I2S、 LCD和NOR Flash功能,通過設(shè)置 PADOCTL等于2、 PADICTL等于3、 PAD2CTL等于6,就可把I2S、 LCD、 NOR Flash 映射到芯片管腳上,還剩余一組PAD Group 3的管腳可用作其它用途。
步驟7:構(gòu)造邏輯電路,可通過寄存器配置把功能組的1/0設(shè)置成功能1/0, 或者設(shè)置成GPIO,設(shè)計了 M(范圍為1到1000,如9,但不限于此)個寄存器配 置把功能組中的I/O設(shè)置成功能1/0,或者設(shè)置成GPIO。在芯片中設(shè)計了 9個 PAD模式寄存器,分別為PADM0DE1、PADM0DE2到PADM0DE9,這9個寄存器的bitO 到bitll分別控制功能組的每一個I/O是否為GPIO或功能1/0(1是GPIO, 0是 功能I/O)。如要把功能組5中的第5到8個I/O設(shè)置成GPIO,只需要設(shè)置寄存 器PADM0DE5等于0x0f0即可。
在某個應(yīng)用中需要使用NAND、 I2S、 Keypad,通過設(shè)置PAD0CTL等于4、 PAD1CTL等于5、 PAD2CTL等于7,就可把NAND、 I2S、 Keypad映射到芯片管腳 上,其中功能組5中的sdmmc[3:0]不需要使用,它對應(yīng)的管腳為管腳17到20, 就可用作GPIO,只需要設(shè)置寄存器PADM0DE5等于OxOfO即可。
圖2為基于矩陣的芯片端口映射方法的流程該方法通過寄存器配置和硬件復用控制矩陣邏輯,可以把任意功能的I/O 復用到芯片任意管腳上,實現(xiàn)芯片端口的映射,其步驟如下 步驟l:定義N個I/0為一個功能組;
步驟2:根據(jù)芯片功能,定義P個功能,每個功能包含一定數(shù)量的I/O; 步驟3:把P個功能中一部分功能進行排列組合組成一個功能組,這個功能 組的I/O總的數(shù)量不超過N個I/O;
步驟4:重復步驟3產(chǎn)生M個功能組;
步驟5:根據(jù)芯片可用管腳數(shù)量,定義K個l/0端口組,每個端口組包含N 個I/0;
步驟6:構(gòu)造控制復用矩陣邏輯電路,可通過寄存器配置實現(xiàn)從M'功能組 到P端口組的映射;
步驟7:構(gòu)造邏輯電路,可通過寄存器配置把功能組M'中的I/O設(shè)置成功
能1/0,或者設(shè)置成GPIO。
本發(fā)明所用的實例只是用來對基于矩陣的端口映射的一種解釋說明,并不 代表本發(fā)明所要保護的范圍僅限于此,凡采用本發(fā)明中所提及的方法和結(jié)構(gòu), 或者采用對某些部分相同功能的替代方案,均在本發(fā)明所要求的保護范圍,從
事本行業(yè)的技術(shù)人員對此應(yīng)予理解(
權(quán)利要求
1.一種基于矩陣的芯片端口映射方法,該方法通過寄存器配置和硬件復用控制矩陣邏輯,可以把任意功能的I/O復用到芯片不同管腳上,實現(xiàn)芯片端口的映射,其步驟如下步驟1定義N個I/O為一個功能組;步驟2根據(jù)芯片功能,定義P個功能,每個功能包含一定數(shù)量的I/O;步驟3把P個功能中一部分功能進行排列組合組成一個功能組,這個功能組的I/O總的數(shù)量不超過N個I/O;步驟4重復步驟3產(chǎn)生M個功能組;步驟5根據(jù)芯片可用管腳數(shù)量,定義K個I/O端口組,每個端口組包含N個I/O;步驟6構(gòu)造控制復用矩陣邏輯電路,可通過寄存器配置實現(xiàn)從Mi功能組到Kj端口組的映射;步驟7構(gòu)造邏輯電路,可通過寄存器配置把功能組Mi中的I/O設(shè)置成功能I/O,或者設(shè)置成GPIO。
2、 根據(jù)權(quán)利要求1所述的基于矩陣的芯片端口映射方法,其特征在于可以把任意功能映射任意組芯片管腳上,可以提高芯片管腳的效率,減少芯片管腳 的數(shù)量。
3、 根據(jù)權(quán)利要求1所述的基于矩陣的芯片端口映射方法,其特征在于,所述 步驟l:根據(jù)可供復用的管腳數(shù)量為T個以及各模塊管腳數(shù)量,把N個I/0定義為1個功能組。
4、 根據(jù)權(quán)利要求1所述的基于矩陣的芯片端口映射方法,其特征在于,所述步驟2:根據(jù)芯片功能,確定芯片包含哪些模塊,如MAC、 LCD、 12S、 NAND、 SD/MMC、 NORFlash、 Keypad、 ITUIN、而OUT、 TVOUT、 SRAM、 AC97、 UART、 SSP、 SPI、 USB、 CAN、 RS485、 RS232、 FlaxRaw、 FlexIO、 SDIO、 SATA、 1394、 WLAN、 Bluetooth、 Irda、 PS、 SDRAM、 DDR、 DDR2、 SRAM、 CEATA、 CF、 IDE、 eMMC、 XD、 MemoryStick、 SPDIF模塊,但不限于此; 確定每個功能組的I/O數(shù)量,每個模塊的I/O數(shù)量根據(jù)需要確定,如其中MAC 有12個I/O、 I2S有4個I/O、 NAND有16個I/O、 Keypad有12個I/O、 ITU IN 有11個I/O。
5、根據(jù)權(quán)利要求l所述的基于矩陣的芯片端口映射方法,其特征在于,所述步 驟3和步驟4:根據(jù)產(chǎn)品需要,定義如下的M個功能組,每個功能組擁有不超過N 個1/0,把某個模塊XX的a個I/O寫成xx[a-l:0],如把MAC的12個I/0寫成 mac[ll:O], LCD的20個I/O寫成lcd[19:0], 12S的4個I/O寫成i2s[3:0], ITUIN的ll 個I/O寫成itujn[10:0],同時mac
表示為MAC的第0個I/0, mac[5]表示為MAC的 第5個I/0, lcd[15:12]表示為LCD的第12到第15個I/0, keypad[5:2]表示為Keypad 的第2到第5個I/0,某個功能組n由模塊l的第a至第b個1/0,模塊2的第c至第d個 I/O,模塊3的第e至第f個I/0組成,則這個功能組表示成功能組n:模塊l[b:a]、模塊2[d:c]、模塊3[f:e]M個功能組表示如下,但不限于此功能組l:模塊l[b:a]、模塊2[d:c]、模塊3[f:e]功能組2:模塊4[k:i]功能組3:模塊l[j:l]、模塊5[mm]、模塊8[o:p] 功能組M:模塊t[x:y]、模塊n[u:v]如某芯片包含MAC、 L2S、 LCD、 NAND、 SD/MMC、 NORFlash、 KEYPAD、 ITUIN等功能,設(shè)計了如下9個功能組,分別為 功能組l: mac[ll:0〗 功能組2: i2s[3:0]、 lcd[19:12] 功能組3: lcd[ll:0] 功能組4: nand[15:4]功能組5: nand[3:0〗、sdmmc[3:0]、 i2s[3:0]功能組6: norflash[ll:O]功能組7: keypad[ll:O]功能組8: itu—in[10:0]功能組9: nand[3:0]、 lcd[19:12]。
6、 根據(jù)權(quán)利要求l所述的基于矩陣的芯片端口映射方法,其特征在于,所述步 驟5:由于可供復用的管腳數(shù)量為T個,N個I/0定義為1個功能組,所以芯片只有 K二T/N個I/0端口組,也就是說在某個具體應(yīng)用用,最多只能把以上M個功能組 中的K個功能組映射到芯片管腳上。
7、 根據(jù)權(quán)利要求1所述的基于矩陣的芯片端口映射方法,其特征在于,所述 步驟6:構(gòu)造控制復用矩陣邏輯電路,設(shè)計了K個配置寄存器用來實現(xiàn)功能組 到端口組的映射,某芯片共有108個管腳,其中49至ljl08管腳用于通用的目 的,l到48管腳用于端口復用,分成4組,其中PAD Group 0包含1到12管 腳,其中PAD Group 1包含13到24管腳,其中PAD Group 2包含25到36管 腳,其中PAD Group 3包含37到48管腳,芯片中設(shè)計了如下寄存器PADOCTL、 PAD1CTL、 PAD2CTL、 PAD3CTL,用來實現(xiàn)功能組到端口組的映射;以前述 的設(shè)計了 9個功能組芯片為例,設(shè)置PADOCTL等于7,則表示功能組7的 Keypad的12個I/O映射到芯片的管腳1到管腳12,設(shè)置PAD3CTL等于2, 則表示功能組2的I2S的4個I/O映射到芯片的管腳45到管腳48和功能組2 的LCD的第13個I/O到第20個I/O映射到芯片的管腳37到管腳44。 8、根據(jù)權(quán)利要求l所述的基于矩陣的芯片端口映射方法,其特征在于,所述步 驟7:構(gòu)造邏輯電路,設(shè)計了M個寄存器配置把功能組中的I/0設(shè)置成功能1/0, 或者設(shè)置成GPIO,以前述的設(shè)計了9個功能組芯片為例,芯片中設(shè)計了9個PAD 模式寄存器,分別為PADMODEl、 PADMODE2到PADMODE9,這9個寄存器的 bit0到bitll分別控制功能組的每一個I/O是否為GPIO或功能I/O;如要把功能組5 中的第5到8個I/0設(shè)置成GPI0,只需要設(shè)置
全文摘要
本發(fā)明提供一種基于矩陣的芯片端口映射方法,方法包括定義N個I/O為一個功能組;根據(jù)芯片功能,定義P個功能,每個功能包含一定數(shù)量的I/O;把P個功能中一部分功能的I/O進行排列組合組成一個功能組,這個功能組的I/O總的數(shù)量不超過N個I/O;產(chǎn)生M個功能組;根據(jù)芯片可用管腳數(shù)量,定義K個I/O芯片端口組,每個端口組包含N個I/O;構(gòu)造控制復用矩陣邏輯電路,可通過寄存器配置實現(xiàn)從M<sub>i</sub>功能組到K<sub>i</sub>端口組的映射;構(gòu)造邏輯電路,可通過寄存器配置把功能組M<sub>i</sub>中的I/O設(shè)置成功能I/O,或者設(shè)置成GPIO。
文檔編號H03K19/177GK101369813SQ20081016755
公開日2009年2月18日 申請日期2008年10月10日 優(yōu)先權(quán)日2008年10月10日
發(fā)明者張小光, 曹志林, 湯加躍 申請人:深圳市飛芯科技有限公司