• 検索結果がありません。

進数 13 ビット値 すべてゼロ FULL と ALMOSTFULL の差を設定します。 16 進数 で指定します。

FIFO_SYNC_MACRO

OFFSET 16 進数 13 ビット値 すべてゼロ FULL と ALMOSTFULL の差を設定します。 16 進数 で指定します。

DATA_WIDTH 整数 1 ~ 72 4 DI/DO バスの幅を指定します。

DEVICE 文字列 "7SERIES" "7SERIES" ターゲットのハードウェア アーキテクチャを指定します。

DO_REG 2 進数 0、1 1 同期 FIFO の標準操作を実行する場合は、0 に設定

します。

1 に設定すると、同期 FIFO の出力にパイプライン レ ジスタが追加されます。 このためデータに 1 クロック サイクルのレイテンシが発生しますが、 clock-to-out タイミングは改善します。

FIFO_SIZE 文字列 "18Kb" 、

"36Kb"

"18Kb" FIFO を 18Kb または 36Kb メモリとしてコンフィギュ レーションします。

SIM_MODE 文字列 "SAFE"、

"FAST"

"SAFE" シミュレーションのみの属性です。 "FAST" に設定す ると、シミュレーション モデルがパフォーマンス重視 モードで実行されます。 詳細は、『合成/シミュレーショ ン デザイン ガイド』を参照してください。

VHDL 記述 (インスタンシエーション)

次の 2 つの文が存在しない場合は、コピーしてエンティティ宣言の前に貼り付けます。

Library UNISIM;

use UNISIM.vcomponents.all;

-- FIFO_SYNC_MACRO: Synchronous First-In, First-Out (FIFO) RAM Buffer

-- 7 Series

-- Xilinx HDL Libraries Guide, version 13.1

-- Note - This Unimacro model assumes the port directions to be "downto".

-- Simulation of this model with "to" in the port directions could lead to erroneous results.

- DATA_WIDTH | FIFO_SIZE | FIFO Depth | RDCOUNT/WRCOUNT Width - ---- --

===========|===========|============|=======================---- 37-72 | "36Kb" | 512 | 9-bit

---- 19-36 | "36Kb" | 1024 | 10-bit

---- 19-36 | "18Kb" | 512 | 9-bit

---- 10-18 | "36Kb" | 2048 | 11-bit

---- 10-18 | "18Kb" | 1024 | 10-bit

---- 5-9 | "36Kb" | 4096 | 12-bit

---- 5-9 | "18Kb" | 2048 | 11-bit

---- 1-4 | "36Kb" | 8192 | 13-bit

---- 1-4 | "18Kb" | 4096 | 12-bit

--

---FIFO_SYNC_MACRO_inst : FIFO_SYNC_MACRO generic map (

DEVICE => "7SERIES", -- Target Device: "VIRTEX5, "VIRTEX6", "7SERIES"

ALMOST_FULL_OFFSET => X"0080", -- Sets almost full threshold ALMOST_EMPTY_OFFSET => X"0080", -- Sets the almost empty threshold

DATA_WIDTH => 0, -- Valid values are 1-72 (37-72 only valid when FIFO_SIZE="36Kb") FIFO_SIZE => "18Kb) -- Target BRAM, "18Kb" or "36Kb"

port map (

ALMOSTEMPTY => ALMOSTEMPTY, -- 1-bit output almost empty ALMOSTFULL => ALMOSTFULL, -- 1-bit output almost full

DO => DO, -- Output data, width defined by DATA_WIDTH parameter EMPTY => EMPTY, -- 1-bit output empty

FULL => FULL, -- 1-bit output full

RDCOUNT => RDCOUNT, -- Output read count, width determined by FIFO depth RDERR => RDERR, -- 1-bit output read error

WRCOUNT => WRCOUNT, -- Output write count, width determined by FIFO depth WRERR => WRERR, -- 1-bit output write error

CLK => CLK, -- 1-bit input clock

DI => DI, -- Input data, width defined by DATA_WIDTH parameter RDEN => RDEN, -- 1-bit input read enable

RST => RST, -- 1-bit input reset

WREN => WREN -- 1-bit input write enable );

-- End of FIFO_SYNC_MACRO_inst instantiation

Verilog 記述 (インスタンシエーション)

// FIFO_SYNC_MACRO: Synchronous First-In, First-Out (FIFO) RAM Buffer

// 7 Series

// Xilinx HDL Libraries Guide, version 13.1

/////////////////////////////////////////////////////////////////

// DATA_WIDTH | FIFO_SIZE | FIFO Depth | RDCOUNT/WRCOUNT Width //

// ===========|===========|============|=======================//

// 37-72 | "36Kb" | 512 | 9-bit //

// 19-36 | "36Kb" | 1024 | 10-bit //

// 19-36 | "18Kb" | 512 | 9-bit //

// 10-18 | "36Kb" | 2048 | 11-bit //

// 10-18 | "18Kb" | 1024 | 10-bit //

// 5-9 | "36Kb" | 4096 | 12-bit //

// 5-9 | "18Kb" | 2048 | 11-bit //

// 1-4 | "36Kb" | 8192 | 13-bit //

// 1-4 | "18Kb" | 4096 | 12-bit //

/////////////////////////////////////////////////////////////////

FIFO_SYNC_MACRO #(

.DEVICE("7SERIES"), // Target Device: "VIRTEX5", "VIRTEX6", "7SERIES"

.ALMOST_EMPTY_OFFSET(9’h080), // Sets the almost empty threshold .ALMOST_FULL_OFFSET(9’h080), // Sets almost full threshold

.DATA_WIDTH(0), // Valid values are 1-72 (37-72 only valid when FIFO_SIZE="36Kb") .DO_REG(0), // Optional output register (0 or 1)

.FIFO_SIZE ("18Kb") // Target BRAM: "18Kb" or "36Kb"

) FIFO_SYNC_MACRO_inst (

.ALMOSTEMPTY(ALMOSTEMPTY), // 1-bit output almost empty .ALMOSTFULL(ALMOSTFULL), // 1-bit output almost full

.DO(DO), // Output data, width defined by DATA_WIDTH parameter .EMPTY(EMPTY), // 1-bit output empty

.FULL(FULL), // 1-bit output full

.RDCOUNT(RDCOUNT), // Output read count, width determined by FIFO depth .RDERR(RDERR), // 1-bit output read error

.WRCOUNT(WRCOUNT), // Output write count, width determined by FIFO depth .WRERR(WRERR), // 1-bit output write error

.CLK(CLK), // 1-bit input clock

.DI(DI), // Input data, width defined by DATA_WIDTH parameter .RDEN(RDEN), // 1-bit input read enable

.RST(RST), // 1-bit input reset

.WREN(WREN) // 1-bit input write enable );

// End of FIFO_SYNC_MACRO_inst instantiation

詳細情報

7 シリーズ FPGA の資料 (ユーザー ガイドおよびデータシート)

ファンクション別分類

このセクションでは、デバイスに含まれるデザイン エレメントをファンクション別に分類して示 します。 エレメント (プリミティブおよびマクロのインプリメンテーション) は、各カテゴリでアル ファベット順にリストしています。

四則演算ファンクション コンビニエンス プリミティブ レジスタおよびラッチ

クロック コンポーネント I/O コンポーネント シフト レジスタ

コンフィギュレーション/BSCAN コンポーネント

RAM/ROM スライス/CLB プリミティブ

四則演算ファンクション

デザイン エレメント 説明

DSP48E1

プリミティブ : 48-bit Multi-Functional Arithmetic Block

クロック コンポーネント

デザイン エレメント 説明

BUFG

プリミティブ : Global Clock Buffer

BUFGCTRL

プリミティブ : Global Clock MUX Buffer

BUFHCE

プリミティブ : HROW Clock Buffer for a Single Clocking Region with Clock Enable

BUFIO

プリミティブ : Local Clock Buffer for I/O

BUFIO

プリミティブ : Local Clock Buffer for I/O

BUFR

プリミティブ : Regional Clock Buffer for I/O and Logic Resources within a Clock Region

コンフィギュレーション/BSCAN コンポーネント

デザイン エレメント 説明

DNA_PORT

プリミティブ : Device DNA Access Port

EFUSE_USR

プリミティブ : 32-bit non-volatile design ID

コンビニエンス プリミティブ

デザイン エレメント 説明

BUFGCE

プリミティブ : Global Clock Buffer with Clock Enable

BUFGCE_1

プリミティブ : Global Clock Buffer with Clock Enable and

Output State 1

BUFGMUX

プリミティブ : Global Clock MUX Buffer

BUFGMUX_1

プリミティブ : Global Clock MUX Buffer with Output State 1

BUFGMUX_CTRL

プリミティブ : 2-to-1 Global Clock MUX Buffer

I/O コンポーネント

デザイン エレメント 説明

DCIRESET

プリミティブ : Digitially Controlled Impedance Reset Component

IBUF

プリミティブ : Input Buffer

IBUFDS

プリミティブ : Differential Signaling Input Buffer

IBUFDS_DIFF_OUT

プリミティブ : 7 series JTAG Boundary Scan Logic Control Circuit

IBUFG

プリミティブ : Dedicated Input Clock Buffer

IBUFGDS

プリミティブ : Differential Signaling Dedicated Input Clock Buffer and Optional Delay

IBUFGDS_DIFF_OUT

プリミティブ : Differential Signaling Input Buffer with Differential Output

IDELAYCTRL

プリミティブ : IDELAYE2/ODELAYE2 Tap Delay Value Control

IOBUF

プリミティブ : Bi-Directional Buffer

IOBUFDS

プリミティブ : 3-State Differential Signaling I/O Buffer with Active Low Output Enable

KEEPER

プリミティブ : KEEPER Symbol

OBUF

プリミティブ : Output Buffer

OBUFDS

プリミティブ : Differential Signaling Output Buffer

OBUFT

プリミティブ : 3-State Output Buffer with Active Low Output Enable

OBUFTDS

プリミティブ : 3-State Output Buffer with Differential Signaling, Active-Low Output Enable

PULLDOWN

プリミティブ : Resistor to GND for Input Pads, Open-Drain, and 3-State Outputs

PULLUP

プリミティブ : Resistor to VCC for Input PADs, Open-Drain,

and 3-State Outputs