鎽� 瑕侊細鏈枃閫氶亷涓€濂楁暩(sh霉)鎿�(j霉)閲囬泦鍗$殑瑷�(sh猫)瑷堜粙绱逛簡PCI绺界窔鏁�(sh霉)鎿�(j霉)鍌宠几?sh霉)骞曨姠鍏穅绋�锛岀郸鍑轰簡绯荤当(t菕ng)鏁撮珨瑷�(sh猫)瑷堟柟妗堝拰PCI鎺ュ彛閫氫俊鏂瑰紡鍙婇﹨(q奴)鍕曠▼搴�?q奴)宕縁(xi脿n)锛屽苟钁楅噸瑷庤珫浜哖CI鏁�(sh霉)鎿�(j霉)鍌宠几涓奖闊垮偝杓搁€熺巼鐨勫悇鍊嬫柟闈�銆�
闂�(gu膩n)閸佃锛�PCI绺界窔锛學inDriver锛岀洿鎺ュ瓨鍎插櫒瀛樺彇
1 寮曡█
銆€銆€瑷堢畻姗�(j墨)绺界窔鎿�(ku貌)灞曟妧琛�(sh霉)浣垮緱鍩轰簬瑷堢畻姗�(j墨)鐨勬暩(sh霉)鎿�(j霉)閲囬泦鎶€琛�(sh霉)杩呴€熷緱鍒版噳(y墨ng)鐢�锛屽熀浜嶱C姗�(j墨)鐨勬暩(sh霉)鎿�(j霉)閲囬泦绯荤当(t菕ng)鏄洰鍓嶆噳(y墨ng)鐢ㄦ渶鐐哄唬娉涚殑鏁�(sh霉)鎿�(j霉)閲囬泦绯荤当(t菕ng)涔嬩竴锛屼笉浣嗗唬娉涙噳(y墨ng)鐢ㄤ簬闆诲姏瑷�(sh猫)鍌欑洠(ji膩n)鎺�銆侀仚娓仚鎰熺瓑娓帶闋�(l菒ng)鍩燂紝鍦ㄨ伈绱�銆侀浄閬�(d谩)銆侀€氳▕銆佸湴璩�(zh矛)銆侀啱(y墨)鐧傚櫒姊扮瓑闋�(l菒ng)鍩熶腑涔熸湁钁楅噸瑕佺殑鎳�(y墨ng)鐢ㄣ€傞珮閫熸暩(sh霉)鎿�(j霉)鍌宠几濮嬬祩鏄▓绠楁(j墨)鐩搁棞(gu膩n)闋�(l菒ng)鍩熺爺绌剁殑閲嶉粸(di菐n)锛屽畠鏄▓绠楁(j墨)鎰熺煡澶栭儴涓栫晫骞跺皪鍏堕€�(j矛n)琛屾帶鍒剁殑鍩虹(ch菙)銆侾CI绺界窔鍗�(xi茅)璀版槸Intel鍏徃1992骞存彁鍑猴紝鐐烘豢瓒抽珮閫熸暩(sh霉)鎿�(j霉)杓稿叆/杓稿嚭瑕佹眰鑰岃ō(sh猫)瑷堢殑涓€绋綆鎴愭湰锛岄珮鎬ц兘鐨勫眬閮ㄧ附绶氬崝(xi茅)璀般€�32浣峆CI绺界窔鐨勫嘲鍊煎偝杓搁€熺巼鐐�132MB/s锛�33MHz脳4Byte锛�銆傚湪PC姗�(j墨)鐨勬暩(sh霉)鎿�(j霉)鍌宠几涓�锛孭CI绺界窔浠ュ叾鍗撹秺鐨勬€ц兘寰楀埌浜嗗唬娉涚殑鎳�(y墨ng)鐢ㄣ€傞珮閫熺殑鏁�(sh霉)鎿�(j霉)鍌宠几瑕佹眰鎻愰珮PCI绺界窔鐨勫付瀵埄鐢ㄧ巼锛屼娇鍏剁洝閲忔帴杩慞CI绺界窔鐨勬サ闄愰€熺巼銆傛湰鏂囪┏绱�(x矛)浠嬬垂浜哖CI绺界窔楂橀€熸暩(sh霉)鎿�(j霉)鍌宠几绯荤当(t菕ng)瑷�(sh猫)瑷堢殑闂�(gu膩n)閸垫妧琛�(sh霉)锛屽苟瀵�(sh铆)鐝�(xi脿n)浜嗕竴濂楅珮閫熸暩(sh霉)鎿�(j霉)閲囬泦绯荤当(t菕ng)銆�
2 纭欢闆昏矾瑷�(sh猫)瑷�
銆€銆€瑭茬郴绲�(t菕ng)纭欢闆昏矾鏉跨殑绲�(ji茅)妲�(g貌u)妗嗗湒濡傚湒1鎵€绀恒€傚叾涓璓CI9054绺界窔鎺у埗鍣ㄨ矤(f霉)璨�(z茅)灞€閮ㄧ附绶氳垏PCI绺界窔闁撶殑鎺ュ彛閫氫俊銆傜敱浜嶱CI9054 Local绺界窔閮ㄥ垎淇¤櫉鏅傚簭涔熸瘮杓冨京(f霉)闆�锛岀敤闁€闆昏矾涓嶄絾闆d互瀵�(sh铆)鐝�(xi脿n)鑰屼笖鎵€闇€瑕佽姱鐗囨暩(sh霉)閲忚純澶氾紝褰遍熆闆昏矾鏉跨殑鎿�(ku貌)鍏呰兘鍔涘強閫氱敤鎬�锛屾晠閲囩敤CPLD瀵�(sh铆)鐝�(xi脿n)PCI9054 Local绔殑鎺у埗銆傚緸妗嗗湒涓彲浠ョ湅鍒�锛� PCI9054灞€閮ㄦ暩(sh霉)鎿�(j霉)绺界窔楂樹簲浣嶆暩(sh霉)鎿�(j霉)绶氭帴鍒癈PLD寮曡叧涓婏紝閫欎簲鏍规暩(sh霉)鎿�(j霉)绶氬彲浠ユ帴鍙楀拰鐧�(f膩)閫佹暩(sh霉)鎿�(j霉)锛屾牴鎿�(j霉)鎺ユ敹鍒扮殑鏁�(sh霉)鎿�(j霉)灏嶅叾璀⒓鐢�(ch菐n)鐢熸帶鍒朵俊鎭紝閭勫彲浠ョ櫦(f膩)鍑烘暩(sh霉)鎿�(j霉)浣縋CI9054鐢�(ch菐n)鐢熼杸閳翠腑鏂峰拰MailBox涓柗銆�
銆€銆€PCI鎺ュ彛鏁�(sh霉)鎿�(j霉)鍌宠几鏁堢巼闈炲父楂樿€孉/D閲囬泦鏁�(sh霉)鎿�(j霉)鏁堢巼杓冧綆锛屾墍浠ユ湰瑷�(sh猫)瑷堥噰鐢‵IFO渚嗙珐瀛樻暩(sh霉)鎿�(j霉)锛屼篃鍙互鍚屾檪閲囬泦澶氳矾鏁�(sh霉)鎿�(j霉)銆侾CI9054灞€閮ㄧ附绶氭敮鎸�50MHz鏅傞悩锛岀偤閰嶅悎A/D宸ヤ綔锛屾湰瑷�(sh猫)瑷堥伕鐢�40M鏅傞悩銆侾CI9054鐨勬墍鏈夊湴鍧€绶氬拰鎺у埗淇¤櫉閮藉彧鑸嘋PLD閫f帴锛岀敘(ch菐n)鐢烠PLD鐨勫伐浣滅媭鎱�(t脿i)鍜屽悇绋帶鍒朵俊鎭�銆侳IFO閲囩敤TI鍏徃鐢熺敘(ch菐n)鐨凷N74V3690鑺墖锛岃┎鑺墖闈炲父閬╁悎浜庣恫(w菐ng)绲�(lu貌)锛岃闋伙紝淇¤櫉铏曠悊锛岄浕瑭憋紝鏁�(sh霉)鎿�(j霉)閫氫俊鍜屽叾浠栭渶瑕佸ぇ閲忔暩(sh霉)鎿�(j霉)鍜岄潪灏嶇瓑绺界窔鍖归厤鐨勬噳(y墨ng)鐢�銆�
[align=center]

鍦�1 纭欢闆昏矾妗嗗湒[/align]
3 DMA鍌宠几鏂瑰紡瑷�(sh猫)瑷�
銆€銆€3.1鏀归€�(j矛n)鐨勭媭鎱�(t脿i)姗�(j墨)瑷�(sh猫)瑷�
銆€銆€涓€鑸儏娉佷笅鐙€鎱�(t脿i)姗�(j墨)鐨勮綁(zhu菐n)鎻涘湒濡傚湒2鎵€绀�銆傝┎鐙€鎱�(t脿i)姗�(j墨)鏈変笁绋偝杓哥媭鎱�(t脿i),绌洪枒鐙€鎱�(t脿i)銆佺瓑寰呯媭鎱�(t脿i)鍜屽偝杓哥媭鎱�(t脿i)銆傝┎鐙€鎱�(t脿i)姗�(j墨)鑳芥垚鍔熷畬鎴愯垏PCI9054鐨勯厤鍚堟暩(sh霉)鎿�(j霉)鍌宠几锛屽偝杓告€ц兘绌�(w臎n)瀹氾紝鏁堟灉杓冨ソ銆傛槸鐝�(xi脿n)鍦≒CI9054灞€閮ㄧ附绶氱媭鎱�(t脿i)姗�(j墨)瑷�(sh猫)瑷堢殑涓€鑸柟娉曘€傞€氶亷瀵�(sh铆)闅涙脯瑭�锛屽湪鐢ㄦ埗妯″紡涓�锛岄噰鐢ㄨ┎鐙€鎱�(t脿i)姗�(j墨)鏌ヨ鏂瑰紡DM锛孉鍌宠几閫熺巼鍙互绌�(w臎n)瀹氶仈(d谩)鍒�68M Byte/s.
[align=center]

鍦�2 涓€鑸媭鎱�(t脿i)杞�(zhu菐n)鎻涘湒[/align]
銆€銆€PCI绺界窔宄板€奸€熺巼鐐�132M Byte/s锛岃€屼互涓婄媭鎱�(t脿i)姗�(j墨)鍜屽偝杓哥媭鎱�(t脿i)涓婦MA閫熺巼鍙湁68MByte/s瑾槑鍏朵腑瀛樺湪涓嶅皯婕忔礊銆傚皪姣旇┎鐙€鎱�(t脿i)姗�(j墨)鐨勬檪搴忚垏PCI9054绲﹀嚭鐨勬(bi膩o)婧�(zh菙n)DMA鍌宠几鏅傚簭鍙煡锛屼竴鑸媭鎱�(t脿i)姗�(j墨)鍦ˋDS#淇¤櫉鐐轰綆鍚庡厛閫�(j矛n)鍏ョ瓑寰呯媭鎱�(t脿i)鐢ㄤ締閰嶇疆鍚勭ó淇¤櫉绶氾紝鐒跺悗鎵嶉枊濮嬪偝杓哥媭鎱�(t脿i)銆傛墍浠ユ瘡娆″暉鍕曞偝杓搁兘瑕佹氮璨�(f猫i)涓€鍊嬫檪閻樺懆鏈熺殑鏅傞枔锛岄€欑ó娴不(f猫i)鍦ㄩ珮閫熸暩(sh霉)鎿�(j霉)鍌宠几閬庣▼涓壒鍒ユ槸DMA鍌宠几涓槸闈炲父鍙鐨�銆�
銆€銆€鑰孭CI9054妯�(bi膩o)婧�(zh菙n)DMA鍌宠几鍦ˋDS#淇¤櫉鐐轰綆鍚庣珛鍒婚枊濮嬫暩(sh霉)鎿�(j霉)鍌宠几骞朵笉闇€瑕佺瓑寰呭懆鏈�锛屾墍浠ョ瓑寰呭懆鏈熷彲浠ョ渷鐣�锛岀媭鎱�(t脿i)姗�(j墨)鍙渶瑕佸叐鍊嬬媭鎱�(t脿i)鐢ㄤ締鐢�(ch菐n)鐢熸檪搴忥紝鍗崇┖闁戠媭鎱�(t脿i)鍜屾暩(sh霉)鎿�(j霉)鍌宠几鐙€鎱�(t脿i)锛岄€欐ǎ鐙€鎱�(t脿i)姗�(j墨)杞�(zhu菐n)鎻涢亷绋嬪彲浠ョ啊鍖�銆備絾鏄敱浜嶱CI9054涓嶅彧闇€瑕丏MA鍌宠几锛岄倓闇€瑕佷竴浜涘叾浠栨搷浣�锛屾瘮濡傝畝瀵煇浜涙帶鍒跺瓧鍜岀媭鎱�(t脿i)妯�(bi膩o)蹇椾綅绛�锛屾墍浠ュ湪CPLD涓倓瑕佸崁(q奴)鍒嗗湴鍧€銆傛墍浠ユ湰瑷�(sh猫)瑷堥噰鐢ㄤ簡鏂扮殑鐙€鎱�(t脿i)姗�(j墨)锛屾敼閫�(j矛n)鐨勭媭鎱�(t脿i)姗�(j墨)鐙€鎱�(t脿i)杞�(zhu菐n)鎻涘湒濡傚湒3鎵€绀�銆�
銆€銆€瀵�(sh铆)闅涙脯寰楀湪鍚屼竴鑷烘(j墨)鍣ㄤ笂锛屾柊鐙€鎱�(t脿i)姗�(j墨)鍦ㄧ敤鎴舵ā寮忎笅锛屾煡瑭㈡柟寮廌MA鍌宠几閫熺巼鍙互绌�(w臎n)瀹氶仈(d谩)鍒�88MByte/s銆傛墍浠ュ湪鍚岀ó鎯呮硜涓�锛屾敼閫�(j矛n)鐨勭媭鎱�(t脿i)姗�(j墨)閫熺巼鍙互姣斿師鐙€鎱�(t脿i)姗�(j墨)閫熺巼楂樺嚭20MByte/s銆傜敱鍌宠几閫熺巼鐨勫ぇ骞呮彁楂樺彲浠ョ湅鍑猴紝閫欑ó鏀归€�(j矛n)鏂瑰紡鏄潪甯告垚鍔熺殑銆�
[align=center]

鍦�3 鏀归€�(j矛n)鐨勭媭鎱�(t脿i)杞�(zhu菐n)鎻涘湒[/align]
銆€銆€3.2 DMA鍌宠几妯″紡閬告搰
銆€銆€PCI9054鏀寔鍏╃óDMA鍌宠几鏂瑰紡锛氶€g簩(x霉)妯″紡鍜岄泦鏁fā寮�銆傞€g簩(x霉)妯″紡鍗充竴鑸殑DMA鍌宠几鏂瑰紡锛堝鍌宠几锛�锛屽畠瑕佹眰PCI绔殑鐗╃悊瀛樺劜鍦板潃閫g簩(x霉)锛孡ocal绔湴鍧€閫g簩(x霉)鎴栦笉璁婏紙濡傚緸FIFO涓畝鍙栨暩(sh霉)鎿�(j霉)锛屽湴鍧€濮嬬祩涓嶈畩锛�銆傞泦鏁fā寮廌MA鍌宠几鍙互鐢宠珛涓€鍊嬮張琛ㄥ紡鐨勬弿杩扮琛ㄧ敤渚嗗瓨鍎插悇鍊嬬墿鐞嗗湴鍧€涓嶉€g簩(x霉)鐨勫拰鍌宠几澶у皬涓嶅浐瀹氱殑澶氬鏁�(sh霉)鎿�(j霉)鐨勬弿杩板瘎瀛樺櫒鍊硷紝PCI9054鍙互鑷嫊閫氶亷鎺у埗瀵勫瓨鍣ㄦ寚閲濆緸PCI绔垨LOCAL绔畝鍙栧瘎瀛樺櫒鐨勫€煎苟閰嶇疆瀵勫瓨鍣�锛岄枊濮嬩竴娆℃鐨勫偝杓搞€傞€氶亷闆嗘暎妯″紡DMA鍌宠几锛屽彲浠ヤ竴娆″偝閬炴洿澶氱殑鏁�(sh霉)鎿�(j霉)銆備絾鏄泦鏁fā寮廌MA鍌宠几鍦ㄥ偝杓稿畬涓€濉婃暩(sh霉)鎿�(j霉)涔嬪悗瑕侀噸鏂伴厤缃瘎瀛樺櫒鐨勫€�锛屾墍浠ラ€熷害姣旈€g簩(x霉)妯″紡绋嶆參銆�
銆€銆€鏈ō(sh猫)瑷堝皪鍏╃óDMA鍌宠几妯″紡閫�(j矛n)琛屼簡灏嶆瘮锛屽湪鍏朵粬姊濅欢鐩稿悓鐨勬儏娉佷笅锛岄€氶亷閭忚集鍒嗘瀽鍎€娓緱閫g簩(x霉)妯″紡涓婦MA鍌宠几閫熺巼鐐�95.3M Byte/s锛岄泦鏁fā寮忎笅DMA鍌宠几閫熺巼鐐�91.2M Byte/s銆� 鍙互鐪嬪嚭锛岄€g簩(x霉)妯″紡鍦ㄥ悓绋儏娉佷笅閫熷害瑕佹瘮闆嗘暎妯″紡楂樺嚭4M Byte/s銆備絾鏄€g簩(x霉)妯″紡鐢变簬鍙兘鍠鍟熷嫊DMA锛屾墍浠ュ偝杓告暩(sh霉)鎿�(j霉)閲忓ぇ灏忔湁闄�锛岄€欏湪澶ч噺鐨勬暩(sh霉)鎿�(j霉)鍌宠几鏄潪甯镐笉鍒┿€傝€岄泦鏁fā寮忕敱浜庡彲浠ュ湪鍌宠几閬庣▼涓€氶亷鎻忚堪绗﹁〃閲嶆柊閰嶇疆瀵勫瓨鍣�锛屾墍浠ュ彲浠ヤ竴娆″偝杓歌純澶х殑鏁�(sh霉)鎿�(j霉)閲忥紝涓旈噸鏂伴厤缃瘎瀛樺櫒鐨勫伐浣滀笉闇€瑕侀﹨(q奴)鍕曠▼搴忓共闋�(y霉)锛孭CI9054鏈冭嚜鍕曞畬鎴愯┎閬庣▼锛屾墍浠ュ彲浠ュ湪鍌宠几閫熷害闄嶄綆涓嶅鐨勬儏娉佷笅寰楀埌鏇村ぇ鐨勬暩(sh霉)鎿�(j霉)閲忋€傞泦鏁fā寮忓偝杓告槸PCI9054鏀寔鐨凞MA鍌宠几?sh霉)濂跺帲顐侊吉?銆�?sh铆)闅涙脯寰�锛屽湪璩芥彋(y谩ng)1GHz,256M鍏�(n猫i)瀛樻(j墨)鍣ㄤ笂锛岀浉鍚屾浠朵笅锛岄€g簩(x霉)妯″紡鏈€澶氬彲浠ヤ竴娆″偝杓�4MByte鏁�(sh霉)鎿�(j霉)锛岃€岄泦鏁fā寮忔渶澶氬彲浠ヤ竴娆″偝杓�32MByte銆傞泦鏁fā寮忓彲浠ュ偝杓�?sh霉)鑷�?sh霉)鎿�(j霉)閲忛仩(yu菐n)閬�(yu菐n)澶т簬閫g簩(x霉)妯″紡銆傛墍浠ュ湪闇€瑕佷竴娆″偝杓�?sh霉)鑷�?sh霉)鎿�(j霉)閲忚純澶ц€岄€熷害瑕佹眰鐩稿皪涓嶅お鍤�(y谩n)鏍兼儏娉佷笅闆嗘暎妯″紡鏄純鐐虹悊鎯崇殑閬告搰銆�
銆€銆€3.3 绲傛鏂瑰紡閬告搰
銆€銆€DMA閬庣▼鐨勭祩姝㈠彲浠ラ€氶亷鏌ヨ鍜屼腑鏂峰叐绋柟寮忔娓埌銆傛煡瑭㈡柟寮廌MA鍌宠几鍘熺悊鐐哄湪鍟熷嫊DMA涔嬪悗涓€鐩磋畝鍙栧瘎瀛樺櫒DMACSR0[4]鐨勫€硷紝鐣�(d膩ng)瑭蹭綅鐐�1鏅傝〃绀篋MA鍌宠几瀹岀暍銆備腑鏂锋柟寮廌MA鐐哄湪鍟熷嫊DMA鏅備娇鑳紻MA瀹屾垚涓柗锛岀郴绲�(t菕ng)鎺ユ敹鍒颁腑鏂蜂箣鍚庡湪涓柗铏曠悊渚嬬▼涓瑳娓呯┖涓柗锛屽苟璁€鍙朌MA鍌充締鐨勬暩(sh霉)鎿�(j霉)銆�
銆€銆€鍦ㄧ浉鍚屾浠朵笅娓緱鏌ヨ鏂瑰紡涓嬮€g簩(x霉)DMA鍌宠几閫熺巼鐐�95MByte/s.涓柗鏂瑰紡涓嬮€g簩(x霉)DMA鍌宠几閫熺巼鐐�114.2MByte/s銆�
銆€銆€鐢卞叐绋祩姝㈡柟寮忛€熷害姣旇純鍙煡涓柗鏂瑰紡鍦ㄥ悓妯f浠朵笅鑳芥瘮鏌ヨ鏂瑰紡閫熷害鎻愰珮灏囪繎20MByte/s 銆侾CI绺界窔妤甸檺閫熷害鐐�132MByte/s,鑰岄€欑ó鍌宠几鏂瑰紡閫熺巼宸茬稉(j墨ng)閬�(d谩)鍒�114MByte/s,鎵€浠ラ€欑ó鏂瑰紡DMA閫熷害宸叉帴杩慞CI绺界窔鐨勫嘲鍊奸€熷害銆�
4 椹�(q奴)鍕曠▼搴忚ō(sh猫)瑷�
銆€銆€4.1椹�(q奴)鍕曠▼搴忕殑寮曞嚭
銆€銆€寰炴渶寤f硾鐨勬剰缇╄瑳锛屼竴鍊嬧€滈﹨(q奴)鍕曠▼搴忊€濇槸鎿嶄綔涓€鍊嬬‖浠惰ō(sh猫)鍌欑殑涓€绲勫嚱鏁�(sh霉)銆傚湪浠讳綍鎿嶄綔绯荤当(t菕ng)涓婏紝瑷�(sh猫)鍌欓﹨(q奴)鍕曠▼搴忛兘蹇呴爤鑸囧熀鏈殑绯荤当(t菕ng)浠g⒓閫�(j矛n)琛屽拰璜х殑浣滅敤銆侻icrosoft鐐轰繚璀夌郴绲�(t菕ng)鐨勫畨鍏ㄦ€с€佺┅(w臎n)瀹氭€�銆佸彲绉绘鎬�锛屽皪鎳�(y墨ng)鐢ㄧ▼搴忚í鍟忕‖浠惰硣婧愰€�(j矛n)琛屼簡闄愬埗锛屼笉鑳界洿鎺ラ€�(j矛n)琛岀墿鐞嗗収(n猫i)瀛�銆両/O绔彛鐨勮í鍟忎互鍙婁腑鏂疯檿鐞嗙瓑纭欢鎿嶄綔銆�
銆€銆€4.2 浣跨敤WinDriver闁嬬櫦(f膩)瑷�(sh猫)鍌欓﹨(q奴)鍕曠▼搴�
銆€銆€1锛夐﹨(q奴)鍕曠▼搴忛枊鐧�(f膩)鐠�(hu谩n)澧冮伕鎿�
銆€銆€闁嬬櫦(f膩)瑷�(sh猫)鍌欓﹨(q奴)鍕曠▼搴忕殑杌熶欢骞宠嚭鏈夊緢澶氱ó锛屽DDK銆乂TOOSD銆乄inDriver銆丏riverStudio绛�.鏈ō(sh猫)瑷堥噰鐢╓inDriver渚嗛枊鐧�(f膩)瑷�(sh猫)鍌欓﹨(q奴)鍕曠▼搴�.WinDriver灏嶅父瑕嬬殑PCI鎺ュ彛鑺墖锛圓MCC銆丳LX绯诲垪锛夋彁渚涗簡寰堝ソ鐨勬敮鎸�锛屾湁灏堥杸鐨勫嚱鏁�(sh霉)渚涢枊鐧�(f膩)浜哄摗鍒╃敤锛屾柟渚夸簡椹�(q奴)鍕曠▼搴忕殑闁嬬櫦(f膩).
銆€銆€2锛夋湰瑷�(sh猫)瑷堢敤鎴舵ā鎱�(t脿i)涓嬬殑椹�(q奴)鍕曠▼搴忎粙绱�
銆€銆€WinDriver椹�(q奴)鍕曠▼搴忓彲浠ュ垎鐐哄叐绋伐浣滄ā寮�锛屽嵆鐢ㄦ埗妯″紡鍜屽収(n猫i)鏍告ā寮忋€傛湰瑷�(sh猫)瑷堢敤鎴舵ā寮忎笅鐨勯﹨(q奴)鍕曠▼搴忕殑鍔熻兘鍖呮嫭锛歅CI閰嶇疆瀵勫瓨鍣ㄨí鍟�銆佹槧灏勫埌灞€閮ㄧ┖闁撶殑鍚勭ó瀵勫瓨鍣ㄨí鍟忥紙鍖呮嫭灞€閮ㄦ帶鍒跺瘎瀛樺櫒銆丷unTime瀵勫瓨鍣ㄣ€丏MA瀵勫瓨鍣�銆佸拰娑堟伅闅婂垪瀵勫瓨鍣級锛屽悇绋甈CI瑷�(sh猫)鍌欓伕鎿�锛孍EPROM瑷晱锛孖O鎿嶄綔锛孡OCAL鏄犲皠鐨勫悇鍊嬬┖闁撶殑瑷晱锛孌MA鎿嶄綔锛屼腑鏂疯檿鐞嗙瓑銆�
銆€銆€3锛夋湰瑷�(sh猫)瑷堜腑鍏�(n猫i)鏍搁﹨(q奴)鍕曠▼搴忕殑瑷�(sh猫)瑷�
銆€銆€鏁�(sh霉)鎿�(j霉)閲囬泦闇€瑕佸偝閫佸ぇ閲忕殑鏁�(sh霉)鎿�(j霉)锛岄渶瑕佸揩閫熺殑灏囬噰闆嗗埌鐨勬暩(sh霉)鎿�(j霉)鍌抽仦绲︿富姗�(j墨)锛屾暩(sh霉)鎿�(j霉)鍌抽€佸崰鐢ㄦ檪闁撹秺鐭�锛屾噳(y墨ng)鐢ㄧ▼搴忚兘鍒╃敤鐨勬檪闁撲篃灏辫秺澶氾紝寰炶€屽皪浜庢暩(sh霉)鎿�(j霉)閲囬泦鍗″拰涓绘(j墨)涔嬮枔鐨勭浉浜掗€氫俊鍜屾暩(sh霉)鎿�(j霉)鍌宠几鎻愬嚭浜嗚純楂樼殑瑕佹眰銆傜法瀵┎瑷�(sh猫)鍌欓﹨(q奴)鍕曠▼搴忕殑闂�(gu膩n)閸垫€у晱椤屽湪浜庯細蹇€熷彲闈犵殑DMA鍌宠几銆侀熆鎳�(y墨ng)鍙婃檪鐨勪腑鏂疯檿鐞嗙瓑銆俉inDriver鎻愪緵浜咾ernel PlugIn鎶€琛�(sh霉)锛岃兘澶�?q奴)宕縁(xi脿n)鐞嗘兂鐨勪腑鏂烽熆鎳�(y墨ng)閫熷害锛岃В姹哄皪浜庨珮鎬ц兘鐨勯渶姹�銆傜偤浜嗘彁楂樼郴绲�(t菕ng)鐨勬暣楂旀€ц兘锛屽湪鐢ㄦ埗妯″紡涓嬮﹨(q奴)鍕曠▼搴忕殑鍩虹(ch菙)涓婇噰鐢ㄤ簡Kernel PlugIn鎶€琛�(sh霉)銆傚皣涓柗锛孌MA铏曠悊杞�(zhu菐n)绉诲埌鍏�(n猫i)鏍告ā寮忎笅鍩�(zh铆)琛�銆傚緸鑰屽ぇ澶ф彁楂樹簡绯荤当(t菕ng)鐨勮檿鐞嗛€熷害銆�
銆€銆€4锛塂MA閫熺巼鎺㈣◣
銆€銆€绯荤当(t菕ng)鏁�(sh霉)鎿�(j霉)鍌宠几涓嶅儏闇€瑕佸偝閬炴暩(sh霉)鎿�(j霉)锛岄倓瑕侀€氶亷涓柗渚嗗紩鐧�(f膩)鏁�(sh霉)鎿�(j霉)鍌宠几鍜屽偝杓哥祼(ji茅)鏉熷懠鍙�銆�
銆€銆€鍌宠几鏅傞枔 = 涓柗鏅傞枔 + DMA鍌宠几鏅傞枔
銆€銆€閫氶亷閭忚集鍒嗘瀽鍎€鏌ョ湅纭欢娉㈠舰鍦栧彲浠ヨ▓绠楀嚭鍏�(n猫i)鏍告ā寮忎笅涓柗瑙哥櫦(f膩)DMA鍌宠几閫熺巼鐐�105.4MByte/s銆傛墍浠ユ暩(sh霉)鎿�(j霉)鎸佺簩(x霉)鍌宠几閫熺巼鍙仈(d谩)105MByte/s?锛熸ⅱ閽ュ惞鍓戭儽琚涘洍鎲�?y墨ng)鏅傞枔涔熷奖闊挎暩(sh霉)鎿�(j霉)鍌宠几?sh霉)娣栫奖K閫熷害銆�
銆€銆€鐢辩鍥涚珷DMA閮ㄥ垎瑷庤珫鍙煡锛岀敤鎴舵ā寮忎笅娓緱鐨凞MA鍌宠几鏈熼枔鏈€蹇€熷害鐐�95MB/s銆傚収(n猫i)鏍告ā寮忎笅DMA閫熷害鏈€蹇偤114MB/s銆傝€屾渶鍒濈殑DMA鍌宠几閫熷害鐐�68MB/s銆傚緸鏈€鍒濆埌鐝�(xi脿n)鍦�锛孌MA鍌宠几鏈熼枔鍌宠几閫熷害鎻愰珮浜�46MB/s銆�
绲�(ji茅)鏉熻獮
銆€銆€鍦ㄧ従(xi脿n)浠d俊铏熻檿鐞嗘妧琛�(sh霉)涓紝閫氶亷PCI绺界窔閫�(j矛n)琛屽揩閫熸暩(sh霉)鎿�(j霉)鍌宠几鏄(sh铆)鐝�(xi脿n)涓绘(j墨)鑸囧瑷�(sh猫)闁撻€氫俊鐨勪富瑕佹柟寮�銆備綔鑰呭湪瀵�(sh铆)椹楀鍒╃敤PCI9054鎺ュ彛鑺墖瑷�(sh猫)瑷堜簡涓€鍊嬪付鏈�12閫氶亾鐨勯珮閫熶俊铏熼噰闆嗗櫒銆傚皪褰遍熆鏁�(sh霉)鎿�(j霉)鍌宠几閫熺巼鐨勫悇鍊嬬挵(hu谩n)绡€(ji茅)閫愪竴鑰冩叜锛屾彁鍑轰簡涓€鏁村鏁�(sh霉)鎿�(j霉)鍌宠几鏂规銆傚皣鏁�(sh霉)鎿�(j霉)鎸佺簩(x霉)鍌宠几閫熺巼鎻愰珮鍒�100MByte/s浠ヤ笂銆傛帴杩慞CI绺界窔鐨勬サ闄愰€熺巼銆�
銆€銆€鏈枃鐨勫壍(chu脿ng)鏂伴粸(di菐n)鏄細灏嶅眬閮ㄧ附绶氱媭鎱�(t脿i)姗�(j墨)鐙€鎱�(t脿i)杞�(zhu菐n)鎻涢€�(j矛n)琛屼簡鐮旂┒銆傚眬閮ㄧ附绶氱媭鎱�(t脿i)姗�(j墨)閲囩敤鏀归€�(j矛n)鐨勭媭鎱�(t脿i)杞�(zhu菐n)鎻涢倧杓�锛屽皣DMA鏁�(sh霉)鎿�(j霉)鍌宠几鏁堢巼鎻愰珮浜嗙磩20MByte/s銆�
鍙冭€冩枃鐛�(xi脿n)锛�
銆€銆€[1]瑁村枩榫�锛岀鑾�.鍩轰簬PCI绺界窔鐨勯珮閫熸暩(sh霉)鎿�(j霉)閲囬泦鍗$郴绲�(t菕ng)瑷�(sh猫)瑷堣垏瀵�(sh铆)鐝�(xi脿n)[J].寰(j墨)绠楄▓淇℃伅锛�2006锛�7-1锛�129-131銆�
銆€銆€[2]WinDriver v6.23 User鈥檚 Guide[DB/OL].http://www.jungo.com.2004銆�
銆€銆€[3]PCI9054 Data Book[DB/OL].http://www.plxtech.com.2000-01銆�
銆€銆€[4] 鏉庤泊灞�锛岄櫝閲戦惮涓荤法.PCI灞€閮ㄧ附绶氬強鍏舵噳(y墨ng)鐢�.瑗垮畨锛氳タ瀹夐浕瀛愮鎶€澶у(xu茅)鍑虹増绀綶M].2003銆�
銆€銆€[5] 渚集浜紝椤ф柊钁�.VHDL纭欢鎻忚堪瑾炶█鑸囨暩(sh霉)瀛楅倧杓浕璺ō(sh猫)瑷�.瑗垮畨锛氳タ瀹夐浕瀛愮鎶€澶у(xu茅)鍑虹増绀綶M].1997銆�
銆€銆€[6] 鍠灄锛屾蹇楀墰钁�.Visual C++楂樼礆绶ㄧ▼鎶€琛�(sh霉)DirectX绡�.鍖椾含锛氫腑鍦嬮惖閬撳嚭鐗堢ぞ[M].1998銆�
銆€銆€[7] 鑳℃尝锛屽師鏂版櫠.WinDriver 闁嬬櫦(f膩)椹�(q奴)鍕曠▼搴忕殑KernelPlugIn鎶€琛�(sh霉)鐨勭爺绌惰垏鎳�(y墨ng)鐢╗J].瑷堢畻姗�(j墨)鎳�(y墨ng)鐢�锛�2003,23锛�11锛�銆�