精簡(jiǎn)ISA總線擴(kuò)展應(yīng)用
在英創(chuàng)的精簡(jiǎn)ISA總線中,設(shè)置了2條獨(dú)特的片選控制信號(hào)CS0#和CS1#,這樣就省去了大量的高位地址總線。CS0#和CS1#為低電平有效的脈沖信號(hào)。在x86 系列的嵌入式產(chǎn)品中,CS0#片選信號(hào)的地址區(qū)域?yàn)?x200 – 0x21F,CS1#片選信號(hào)的地址區(qū)域?yàn)?x300 – 0x31F。在ARM9系列的嵌入式產(chǎn)品中,客戶就不用關(guān)心精簡(jiǎn)ISA總線的絕對(duì)地址,只要選定一個(gè)片選信號(hào)及基于這個(gè)片選的地址偏移量即可。如在X86系統(tǒng)下選用了CS1作片選信號(hào),對(duì)0x301進(jìn)行操作,則相對(duì)于ARM系統(tǒng),可使用CS1#、地址偏移量為1的端口。ARM9系列板卡的CS0#、CS1#所對(duì)應(yīng)的地址區(qū)域范圍有所不同。EM9000有13條地址線,每位片選可訪問(wèn)8K的地址空間。EM9160、EM9161的每位片選可訪問(wèn)32 個(gè)地址空間。EM9260、EM9360的CS0#可訪問(wèn)到8K的地址空間,CS1#可訪問(wèn)到1K的地址空間。
以下是英創(chuàng)公司所提供的精簡(jiǎn)ISA擴(kuò)展總線接口的信號(hào)定義:
信號(hào)名稱及簡(jiǎn)要描述 | 精簡(jiǎn)ISA | 信號(hào)名稱及簡(jiǎn)要描述 | |
PIN# | PIN# | ||
RESET#,復(fù)位輸出,低有效 | 1 | 2 | SA0,地址總線 |
SD0,數(shù)據(jù)總線,LSB | 3 | 4 | SA1,地址總線 |
SD1,數(shù)據(jù)總線 | 5 | 6 | SA2,地址總線 |
SD2,數(shù)據(jù)總線 | 7 | 8 | SA3,地址總線 |
SD3,數(shù)據(jù)總線 | 9 | 10 | SA4,地址總線 |
SD4,數(shù)據(jù)總線 | 11 | 12 | WE#,寫信號(hào)控制線,低有效 |
SD5,數(shù)據(jù)總線 | 13 | 14 | RD#,讀信號(hào)控制線,低有效 |
SD6,數(shù)據(jù)總線 | 15 | 16 | CS1#,I/O片選線,低有效 |
SD7,數(shù)據(jù)總線,MSB | 17 | 18 | VCC,電源輸出 |
IRQ,中斷請(qǐng)求,上升沿有效 | 19 | 20 | GND,公共地 |
為了便于用戶理解精簡(jiǎn)ISA總線接口如何進(jìn)行編程,本節(jié)以x86指令和ARM系統(tǒng)為例,簡(jiǎn)單介紹基于英創(chuàng)嵌入式主板的精簡(jiǎn)ISA的應(yīng)用。由于x86、EM9000、EM9x6x三種系統(tǒng)的ISA總線讀寫操作函數(shù)不一樣,所以在具體使用時(shí),應(yīng)當(dāng)參考相應(yīng)的'*.h'文件。以下是基于英創(chuàng)的嵌入式主板的精簡(jiǎn)ISA總線操作指令表,以便查詢: (1):包括ETR232i、ETR232H、ETR100E、NETBOXII等
(2):包括EM9160、EM9161、EM9260、EM9360
X86系統(tǒng)使用DOS操作系統(tǒng),其指令也是標(biāo)準(zhǔn)的C函數(shù),所以操作ISA時(shí)使用的時(shí)絕對(duì)地址。ARM嵌入式主板使用的WINCE操作系統(tǒng),存在地址映射問(wèn)題,同時(shí)使用戶更加方便對(duì)ISA的使用,所以對(duì)ISA操作的過(guò)程被封裝成一個(gè)操作函數(shù)后再提供給用戶,在對(duì)ISA操作時(shí)不需要給出絕對(duì)地址,但是需要指明所使用的片選信號(hào)及基于當(dāng)前片選信號(hào)的偏移地址。下面的讀操作也是相同的。
評(píng)論