Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
xst.pdf
Скачиваний:
143
Добавлен:
11.06.2015
Размер:
5.64 Mб
Скачать

R

Priority Encoders HDL Coding Techniques

3’b100 : res = 8’b00010000; 3’b101 : res = 8’b00100000;

// 110 and 111 selector values are unused default : res = 8’bxxxxxxxx;

endcase

end endmodule

Priority Encoders HDL Coding Techniques

This section discusses Priority Encoders HDL Coding Techniques, and includes:

“About Priority Encoders”

“Priority Encoders Log File”

“Priority Encoders Related Constraints”

“Priority Encoders Coding Examples”

About Priority Encoders

XST can recognize a priority encoder, but in most cases XST does not infer it. To force priority encoder inference, use “Priority Encoder Extraction (PRIORITY_EXTRACT)” with the value force. Xilinx® recommends that you use “Priority Encoder Extraction (PRIORITY_EXTRACT)” on a signal-by-signal basis. Otherwise, “Priority Encoder Extraction (PRIORITY_EXTRACT)” may guide you towards sub-optimal results.

Priority Encoders Log File

The XST log file reports the type and size of recognized priority encoders during the Macro Recognition step.

...

Synthesizing Unit <priority>.

Related source file is priority_encoders_1.vhd.

Found 3-bit 1-of-9 priority encoder for signal <code>. Summary:

inferred 3 Priority encoder(s).

Unit <priority> synthesized.

 

==============================

 

HDL Synthesis Report

 

Macro Statistics

 

# Priority Encoders

: 1

3-bit 1-of-9 priority encoder

: 1

==============================

 

...

 

XST User Guide

www.xilinx.com

103

10.1

Chapter 2: XST HDL Coding Techniques

R

Priority Encoders Related Constraints

“Priority Encoder Extraction (PRIORITY_EXTRACT)”

Priority Encoders Coding Examples

The coding examples in this section are accurate as of the date of publication. Download updates from ftp://ftp.xilinx.com/pub/documentation/misc/examples_v9.zip.

“3-Bit 1-of-9 Priority Encoder”

3-Bit 1-of-9 Priority Encoder

This section discusses 3-Bit 1-of-9 Priority Encoder, and includes:

“3-Bit 1-of-9 Priority Encoder Pin Descriptions”

“3-Bit 1-of-9 Priority Encoder VHDL Coding Example”

“3-Bit 1-of-9 Priority Encoder Verilog Coding Example”

For this example XST may infer a priority encoder. Use “Priority Encoder Extraction (PRIORITY_EXTRACT)” with a value force to force its inference.

Table 2-41: 3-Bit 1-of-9 Priority Encoder Pin Descriptions

IO Pins

Description

 

 

sel

Selector

 

 

code

Encoded Output Bus

 

 

3-Bit 1-of-9 Priority Encoder VHDL Coding Example

--

-- 3-Bit 1-of-9 Priority Encoder

--

library ieee;

use ieee.std_logic_1164.all;

entity priority_encoder_1 is

port ( sel : in std_logic_vector (7 downto 0); code :out std_logic_vector (2 downto 0));

attribute priority_extract: string;

attribute priority_extract of priority_encoder_1: entity is "force"; end priority_encoder_1;

architecture archi of priority_encoder_1 is begin

code <= "000" when sel(0) "001" when sel(1) "010" when sel(2) "011" when sel(3) "100" when sel(4) "101" when sel(5) "110" when sel(6) "111" when sel(7) "---";

='1' else

='1' else

='1' else

='1' else

='1' else

='1' else

='1' else

='1' else

104

www.xilinx.com

XST User Guide

 

 

10.1

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]