一、移植理論知識:
1.網卡芯片與開發板的連接方式
(1)SoC與網卡芯片採用總線式連接方式。
(2)網卡芯片僞裝成SROM (SRAM/ROM) 接口的芯片
(3)如下圖:
2.原理圖瀏覽
2.1 210的SROM控制器允許8/16bit的接口,我們 使用的是16位接口。
2.2 網線有8根線,但是實際只有4根有效通信線,另外4根都是GND,用來抗干擾的。4根通信線中管發送的有2根(Tx-和Tx+),管接收的有2根(Rx+和Rx-)。因爲網線上傳輸的是差分信號。
2.3 網卡芯片有個CS引腳,(CS就是chip select,片選信號,主機向CS發送有效信號則從機芯片工作,主機向CS發送無效信號則從機芯片不工作。),這個引腳要接主機SoC的片選信號引腳,主機S5PV210的每一個SROM bank中有一個片選信號CSn(n=0-5),從原理圖可以看出,我們X210上將DM9000的CS引腳接到了CSn1上,對應SROM bank1(推斷出DM9000的總線地址基地址是0x88000000)。
2.4 DM9000的CMD引腳接到了S5PV210的ADDR2引腳上。DM9000爲了減少芯片引腳數,數據線和地址線是複用的(DATA0到DATA15這16根線是有時候做數據線傳輸數據,有時候做地址線傳輸地址的。什麼時候做什麼用就由CMD引腳決定。)通過查詢數據手冊知道:當CMD爲高電平時對應傳輸是DATA,當CMD爲低電平時對應傳輸爲INDEX(offset,寄存器地址)。
註明:這些引腳上的電平變化都是控制器自動的,不需要程序員手工干預。程序員所需要做的就是在配置寄存器值時充分考慮到硬件電路的接法,然後給相應寄存器配置正確的數值即可。