在idt7025内部有8個獨立與雙RAm存儲單元的鎖存單元,這些單元用來産生并存儲一個标志,以向另外一側指明共享資源一側正被享用,左右端口在通路RAM單元錢,先向相應的鎖存單元提出申請,獲得令牌後才可以使用相應的區段。
semaphore可以看成pc機的io端口,/seml為左側使能控制端,semaphore占用io端口數目等于雙口ram所使用的令牌數目,當pc機向雙口ram申請令牌時,要以io寫方式向指定端口寫入“0”,(端口位址的A2~a0代表令牌号),先置seml為低電平,d0為寫入相應的鎖存邏輯單元,然後以io讀方式讀入該端口資料,檢查是否申請成功。
idt7025的中斷方式下的資料交換
使用中斷功能時,則配置設定給雙口ram每測一個存儲單元,該單元稱作信箱,例如,當dsp向右側位址ffe的存儲單元執行一次寫操作,左側的中斷标志信号intl有效,當主機響應中斷後,想位址ffe的存儲單元執行一次讀操作來清除中斷标志intl。同理。