IOMSCTL( IO Memory Select Control )レジスタは外部IO空間へのアクセス方法を指定します。
このレジスタは16ビット整数レジスタです。初期値は0x0000です。
図1 レジスタの構造
Readアクセスを行うときに挿入するウェイトステート数を指定します。
Writeアクセスを行うときに挿入するウェイトステート数を指定します。
挿入するウェイトステートの数の決め方を指定します。
HCLKに対する動作クロック分周比を指定します。動作周波数は:
動作周波数 = HCLK / ( 2^E_CDS)
で与えられます。HR B-95ではCCLKソースになっていますが、誤りです。
書き込み後のホールドサイクル数を指定します。HR 7-4ではE_WHEとなっています。
CMSピンはADSP-2191にはありませんので、このビットは常に0にします。
C/C++言語用に以下のインターフェースが用意されています。宣言はsysreg.hで行われています。IOMSCTLにアクセスする前には必ずIOPGにExternal_Memory_Interface_Pageを設定してください。
// #include <sysreg.h> // #include <def2191.h> sysreg_write(sysreg_IOPG, External_Access_Bridge_Page) // EMIページに設定 io_space_write(IOMSCTL, 値) // IOMSCTLに値を設定 変数 = io_space_read(IOMSCTL) // IOMSCTLの値を取得
アナログデバイセズが配布しているmcmの中のビット定義ファイルdef2191bit.hから関連するビット定義部分をここに引用します。なお、レジスタ構造がBMSCTLと同じであるため、この部分も同じです。
// Definition for BMSCTL (HR B-94) #define E_COE BIT_15 #define E_WHC BIT_11 #define E_CDS_OFST 8 #define E_CDS_MASK ( 0x7 << E_CDS_OFST ) #define E_CDS_1x ( 0 << E_CDS_OFST ) #define E_CDS_2x ( 1 << E_CDS_OFST ) #define E_CDS_4x ( 2 << E_CDS_OFST ) #define E_CDS_8x ( 3 << E_CDS_OFST ) #define E_CDS_16x ( 4 << E_CDS_OFST ) #define E_CDS_32x ( 5 << E_CDS_OFST ) #define E_WMS_OFST 6 #define E_WMS_MASK ( 0x3 << E_WMS_OFST ) #define E_WMS_EXT ( 0 << E_WMS_OFST ) #define E_WMS_INT ( 1 << E_WMS_OFST ) #define E_WMS_BOTH ( 2 << E_WMS_OFST ) #define E_WMS_EITHER ( 3 << E_WMS_OFST ) #define E_WWC_OFST 3 #define E_WWC_MASK ( 0x3 << E_WWC_OFST ) #define E_WWC_0 ( 0 << E_WWC_OFST ) #define E_WWC_1 ( 1 << E_WWC_OFST ) #define E_WWC_2 ( 2 << E_WWC_OFST ) #define E_WWC_3 ( 3 << E_WWC_OFST ) #define E_WWC_4 ( 4 << E_WWC_OFST ) #define E_WWC_5 ( 5 << E_WWC_OFST ) #define E_WWC_6 ( 6 << E_WWC_OFST ) #define E_WWC_7 ( 7 << E_WWC_OFST ) #define E_RWC_OFST 0 #define E_RWC_MASK ( 0x7 << E_RWC_OFST ) #define E_RWC_0 ( 0 << E_RWC_OFST ) #define E_RWC_1 ( 1 << E_RWC_OFST ) #define E_RWC_2 ( 2 << E_RWC_OFST ) #define E_RWC_3 ( 3 << E_RWC_OFST ) #define E_RWC_4 ( 4 << E_RWC_OFST ) #define E_RWC_5 ( 5 << E_RWC_OFST ) #define E_RWC_6 ( 6 << E_RWC_OFST ) #define E_RWC_7 ( 7 << E_RWC_OFST )
項目 | マニュアルのページ等 |
---|---|
レジスタ構造 | HR B-95 |
説明 | HR 7-3 |