進数で指定します。
ALMOST_FULL_
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 メモリとしてコンフィギュ レーションします。
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.3
-- 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.3
/////////////////////////////////////////////////////////////////
// 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 の資料 (ユーザー ガイドおよびデータシート)
ファンクション別分類
このセクションでは、デバイスに含まれるデザイン エレメントをファンクション別に分類して示 します。エレメント (プリミティブおよびマクロのインプリメンテーション) は、各カテゴリでアル ファベット順にリストしています。
アドバンス コンフィギュレーション/BSCAN
コンポーネント
レジスタおよびラッチ
四則演算ファンクション I/O コンポーネント スライス/CLB プリミティブ
クロック コンポーネント RAM/ROM
アドバンス
デザイン エレメント 説明
GTXE2_CHANNEL
プリミティブ : Gigabit Transceiver for 7 Series Devices
GTXE2_COMMONプリミティブ : Gigabit Transceiver for 7 Series Devices
XADCプリミティブ : Dual 12-Bit 1MSPS Analog-to-Digital Converter
四則演算ファンクション
デザイン エレメント 説明
DSP48E1
プリミティブ : 48-bit Multi-Functional Arithmetic Block
クロック コンポーネント
デザイン エレメント 説明
BUFG
プリミティブ : Global Clock Simple Buffer
BUFGCE
プリミティブ : Global Clock Buffer with Clock Enable
BUFGCE_1プリミティブ : Global Clock Buffer with Clock Enable and
Output State 1
BUFGCTRL
プリミティブ : Global Clock Control Buffer
BUFGMUXプリミティブ : Global Clock MUX Buffer
BUFGMUX_1
プリミティブ : Global Clock MUX Buffer with Output State 1
デザイン エレメント 説明
BUFGMUX_CTRL
プリミティブ : 2-to-1 Global Clock MUX Buffer
BUFH
プリミティブ : HROW Clock Buffer for a Single Clocking Region
BUFHCEプリミティブ : HROW Clock Buffer for a Single Clocking Region
with Clock Enable
BUFIO
プリミティブ : Local Clock Buffer for I/O
BUFMRプリミティブ : Multi-Region Clock Buffer
BUFMRCE
プリミティブ : Multi-Region Clock Buffer with Clock Enable
BUFRプリミティブ : Regional Clock Buffer for I/O and Logic
Resources within a Clock Region
MMCME2_ADV
プリミティブ : Advanced Mixed Mode Clock Manager
MMCME2_BASEプリミティブ : Base Mixed Mode Clock Manager
PLLE2_ADVプリミティブ : Advanced Phase Locked Loop (PLL)
PLLE2_BASEプリミティブ : Base Phase Locked Loop (PLL)
コンフィギュレーション/BSCAN コンポーネント
デザイン エレメント 説明
BSCANE2
プリミティブ : Boundary-Scan User Instruction
CAPTUREE2プリミティブ : Register Capture
DNA_PORT
プリミティブ : Device DNA Access Port
EFUSE_USRプリミティブ : 32-bit non-volatile design ID
FRAME_ECCE2プリミティブ : Configuration Frame Error Correction
ICAPE2プリミティブ : Internal Configuration Access Port
STARTUPE2プリミティブ : STARTUP Block
USR_ACCESSE2
プリミティブ : Configuration Data Access
I/O コンポーネント
デザイン エレメント 説明
DCIRESET
プリミティブ : Digitally Controlled Impedance Reset Component
IBUF
プリミティブ : Input Buffer
IBUF_IBUFDISABLE
プリミティブ : Single-ended Input Buffer with Input Disable
IBUF_INTERMDISABLE
プリミティブ : Single-ended Input Buffer with Input Termination Disable and Input Disable
IBUFDSプリミティブ : Differential Signaling Input Buffer
IBUFDS_DIFF_OUTプリミティブ : Differential Signaling Input Buffer
With Differential Output
IBUFDS_DIFF_OUT_IBUFDISABLE
プリミティブ : Input Differential Buffer with Input
Disable and Differential Output
デザイン エレメント 説明
IBUFDS_DIFF_OUT_INTERMDISABLE
プリミティブ : Input Differential Buffer with Input Termination Disable, Input Disable, and Differential Output
IBUFDS_IBUFDISABLE
プリミティブ : Input Differential Buffer with Input Path Disable
IBUFDS_INTERMDISABLE
プリミティブ : Input Differential Buffer with Input Termination Disable and Input Disable
IBUFG
プリミティブ : Dedicated Input Clock Buffer
IBUFGDSプリミティブ : Differential Signaling Dedicated
Input Clock Buffer
IBUFGDS_DIFF_OUT
プリミティブ : Differential Signaling Dedicated Input Clock Buffer with Differential Output
IDELAYCTRL
プリミティブ : IDELAYE2/ODELAYE2 Tap
Delay Value Control
IDELAYE2
プリミティブ : Input Fixed or Variable Delay Element
IN_FIFO
プリミティブ : Input First-In, First-Out (FIFO)
IOBUF
プリミティブ : Bi-Directional Buffer
IOBUF_DCIEN
プリミティブ : Bi-Directional Single-ended Buffer with DCI and Input Disable.
IOBUF_INTERMDISABLE
プリミティブ : Bi-Directional Single-ended Buffer with Input Termination Disable and Input Path Disable
IOBUFDS
プリミティブ : 3-State Differential Signaling I/O Buffer with Active Low Output Enable
IOBUFDS_DCIEN
プリミティブ : Bi-Directional Differential Buffer with DCI Enable/Disable and Input Disable
IOBUFDS_DIFF_OUTプリミティブ : Differential Bi-directional Buffer
with Differential Output
IOBUFDS_DIFF_OUT_DCIEN
プリミティブ : Bi-Directional Differential Buffer with DCI Disable, Input Disable, and Differential Output
IOBUFDS_DIFF_OUT_INTERMDISABLE
プリミティブ : Bi-Directional Differential Buffer with Input Termination Disable, Input Disable, and Differential Output
IOBUFDS_INTERMDISABLE
プリミティブ : Bi-Directional Differential Buffer with Input Termination Disable and Input Disable
ISERDESE2プリミティブ : Input SERial/DESerializer with
bitslip
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
ODELAYE2
プリミティブ : Output Fixed or Variable Delay Element
OSERDESE2
プリミティブ : Output SERial/DESerializer with bitslip
OUT_FIFO
プリミティブ : Output First-In, First-Out (FIFO) Buffer
PULLDOWN
プリミティブ : Resistor to GND for Input Pads, Open-Drain, and 3-State Outputs
PULLUP