Mudanças entre as edições de "DLP1-EngTel (página)"
Linha 503: | Linha 503: | ||
* Envie o resumo em pdf para (<tt>moecke AT ifsc.edu.br</tt>), com o ASSUNTO: DLP29006 - AE1 - Temas relacionados aos DLPS - resumo. | * Envie o resumo em pdf para (<tt>moecke AT ifsc.edu.br</tt>), com o ASSUNTO: DLP29006 - AE1 - Temas relacionados aos DLPS - resumo. | ||
* Envie o artigo em pdf para (<tt>moecke AT ifsc.edu.br</tt>), com o ASSUNTO: DLP29006 - AE1 - Temas relacionados aos DLPS - artigo. | * Envie o artigo em pdf para (<tt>moecke AT ifsc.edu.br</tt>), com o ASSUNTO: DLP29006 - AE1 - Temas relacionados aos DLPS - artigo. | ||
+ | {{collapse bottom}} | ||
+ | |||
+ | {{collapse top | expand=true| AE2 - Uso de código concorrente - ALU multiplicadora (Prazo de entrega 30/09/2016)}} | ||
+ | *Implemente em VHDL uma Unidade de Lógica e Aritmética que tem como entrada os sinais A e B e que execute as seguintes instruções lógicas e aritméticas conforme o '''opcode''' de entrada: | ||
+ | |||
+ | ;Unidade Lógica: | ||
+ | {| class="wikitable" border="1" cellpadding="3" cellspacing="0" style="text-align:left; font-size:100%" bgcolor="#efefef" | ||
+ | ! scope="col" width=20% align="center"| Instrução | ||
+ | ! scope="col" width=20% align="center"| Operação | ||
+ | ! scope="col" width=20% align="center"| opcode | ||
+ | ! scope="col" width=10% align="center"| QSIM | ||
+ | |- | ||
+ | | Complemento de A || Y = not A || 00000 || 1 | ||
+ | |- | ||
+ | | Complemento de B || Y = not B || 00001 || 2 | ||
+ | |- | ||
+ | | And || Y = A nand B || 00010 || 3 | ||
+ | |- | ||
+ | | Nand || Y = A and B || 00011 || 4 | ||
+ | |- | ||
+ | | Or || Y = A nor B || 00100 || 1 | ||
+ | |- | ||
+ | | Nor || Y = A or B || 00101 || 2 | ||
+ | |- | ||
+ | | Xor || Y = A xor B || 00110 || 3 | ||
+ | |- | ||
+ | | Xnor || Y = A xnor B || 00111 || 4 | ||
+ | |} | ||
+ | |||
+ | ;Unidade Aritmética: (onde os valores de A e B podem ser positivos ou negativos) | ||
+ | |||
+ | {| class="wikitable" border="1" cellpadding="3" cellspacing="0" style="text-align:left; font-size:100%" bgcolor="#efefef" | ||
+ | ! scope="col" width=20% align="center"| Instrução | ||
+ | ! scope="col" width=20% align="center"| Operação | ||
+ | ! scope="col" width=20% align="center"| opcode | ||
+ | ! scope="col" width=10% align="center"| QSIM | ||
+ | |- | ||
+ | | Transfere A || Y = A || 01000 || 1 | ||
+ | |- | ||
+ | | Transfere B || Y = B || 10001 || 2 | ||
+ | |- | ||
+ | | complemento-2 de A || Y = -A || 01001 || 3 | ||
+ | |- | ||
+ | | complemento-2 de B || Y = -B || 10001 || 4 | ||
+ | |- | ||
+ | | Incrementa A || Y = A + 1 || 01010 || 1 | ||
+ | |- | ||
+ | | Decrementa A || Y = A - 1 || 01011 || 2 | ||
+ | |- | ||
+ | | Incrementa B || Y = B + 1 || 10010 || 3 | ||
+ | |- | ||
+ | | Decrementa B || Y = B - 1 || 10011 || 4 | ||
+ | |- | ||
+ | | Soma A e B|| Y = A + B || 11000 || 1,2 | ||
+ | |- | ||
+ | | Subtrai B de A|| Y = A - B || 11001 || 3 | ||
+ | |- | ||
+ | | Subtrai A de B|| Y = B - A || 11010 || 4 | ||
+ | |- | ||
+ | | LSB da Multiplicação de A e B || Y = A * B || 11011 ||1 | ||
+ | |- | ||
+ | | MSB da Multiplicação de A e B || Y = A * B || 11100 ||2 | ||
+ | |- | ||
+ | | Dobra o valor A || Y = A * 2 || 01100 || 1 | ||
+ | |- | ||
+ | | Dobra o valor B || Y = B * 2 || 10100 || 2 | ||
+ | |- | ||
+ | | Metade do valor A || Y = A / 2 || 01101 || 3 | ||
+ | |- | ||
+ | | Metade do valor A || Y = A / 2 || 10101 || 4 | ||
+ | |- | ||
+ | | Divisão de A / B || Y = A / B || 11101 || 3 | ||
+ | |- | ||
+ | | Resto da Divisão de A / B || Y = A REM B || 11110 || 4 | ||
+ | |} | ||
+ | * A ENTITY deverá ter a seguinte interface: | ||
+ | <syntaxhighlight lang=matlab> | ||
+ | ENTITY alu IS | ||
+ | GENERIC (N: INTEGER := 4); --word bits | ||
+ | PORT ( | ||
+ | A, B: IN STD_LOGIC_VECTOR(N-1 DOWNTO 0); | ||
+ | opcode: IN STD_LOGIC_VECTOR(4 DOWNTO 0); | ||
+ | Y: OUT STD_LOGIC_VECTOR(N-1 DOWNTO 0)); | ||
+ | END ENTITY; | ||
+ | </syntaxhighlight> | ||
+ | * Proponha uma ARCHITECTURE que implemente a ALU (Dica: utilize o tipo de dado tipo '''integer'''). | ||
+ | * Na multiplicação LSB são os N bits menos significativos do resultado, e MSB são os N bits mais significativos do resultado. Por exemplo se o resultado tem 10 bits "1001001011" MSB = "10010" e LSB = "01011". | ||
+ | * Anote o número de Elementos Lógicos (ou ALUTs) utilizados [Compilation Report > Flow Summary]. | ||
+ | * Verifique o código RTL gerado [Tools > Netlist Viewers > RTL Viewer] | ||
+ | * Faça a simulação funcional no QSIM, no para os valores mínimos e máximos e para mais 4 pares de valores representáveis e verifique se as operações estão corretas. Para realizar a simulação, escolha um dos seguintes conjuntos de instruções indicados pelos números 1, 2, 3 e 4 na última coluna das tabelas. | ||
+ | * Analise os resultados obtidos para entradas com 4 bits. | ||
+ | * Escreva um relatório contendo a figura do circuitos RTL, as simulações funcionais solicitadas e uma análise textual dos resultados obtidos. O arquivo QAR do projeto também devem ser enviado. | ||
+ | * Envie o artigo em pdf e o qar para (<tt>moecke AT ifsc.edu.br</tt>), com o ASSUNTO: DLP29006 - AE2 - Uso de código concorrente - ALU multiplicadora. | ||
{{collapse bottom}} | {{collapse bottom}} | ||
<!-- | <!-- | ||
− | {{collapse top | AE2 - Operações Aritméticas Básicas em VHDL (Prazo de entrega: 2 Maio 2016)}} | + | {{collapse top | expand=true | AE2 - Operações Aritméticas Básicas em VHDL (Prazo de entrega: 2 Maio 2016)}} |
* Formar equipes com 2 ou 3 alunos. | * Formar equipes com 2 ou 3 alunos. | ||
* Escreva um código VHDL para cada uma das operações matemáticas indicadas abaixo. Para facilitar os testes, utilize como base o seguinte código, no qual é realizada o cálculo da multiplicação de números UNSIGNED de N=4 bits: | * Escreva um código VHDL para cada uma das operações matemáticas indicadas abaixo. Para facilitar os testes, utilize como base o seguinte código, no qual é realizada o cálculo da multiplicação de números UNSIGNED de N=4 bits: |
Edição das 22h44min de 22 de setembro de 2016
MURAL DE AVISOS E OPORTUNIDADES DA ÁREA DE TELECOMUNICAÇÕES
- Link curto http://bit.ly/IFSC-DLP29006
- Carga horária, Ementas, Bibliografia, Professores
- Cronograma de atividades
- Plano de Ensino
Registro on-line das aulas
Unidade 1
- Aula 1 (11 Ago)
- Introdução aos dispositivos lógicos programáveis:
- Conceito, tipos de PLDs
- SPLD: PAL, PLA e GAL
- CPLDs
Exemplos de PLDs |
---|
|
- Ver Dispositivos Lógicos Programáveis - Kamila Rose da Silva, IFSC
- Ver In the befinning - ALTERA
- Ver ALTERA history
- Ver pag. 413 a 422 de [1]
- Ver pag. 495 a 499 de [2]
- Aula 2 (16 Ago)
- Introdução aos dispositivos lógicos programáveis:
- Arquitetura de FPGAs (Xilinx e Altera): CLB, LAB, RAM, DSP, Clock, PLL, I/O
- Vizualização no Chip Planner de um projeto. (importante todos alunos terem acesso a IFSC-CLOUD
- Aula 3 (18 Ago)
-
- Fabricantes de DLPs/FPGAs e familias de DLPs atuais.
- Preços
- Historia, processo de produção dos chips.
- A Brief History of the Fabless Semiconductor Industry
- Taiwan Semiconductor Manufacturing Corporation (TSMC), [http://www.globalfoundries.com/ GLOBALFOUNDRIES
- Fabless: The Transformation of the Semiconductor Industry, 2014 - Download free
- 14nm FinFET Technology, Samsung & Globalfounfries, Funcionamento do FinFET, Produção do FinFET, [1]
- Processo de fabricação de um chip
Unidade 2
- Aula 3 (22 Ago) - Introdução ao VHDL e ambienta EDA - QUARTUS
- Estrutura do código VHDL
- Declaração das bibliotecas e pacotes LIBRARY / PACKAGE
library library_name; use library_name.package)name.all;
- ENTITY
entity entity_name is [generic ( cons_name1: const_type const_value; cons_name2: const_type const_value; ... cons_nameN: const_type const_value);] [port ( signal_name1: mode signal_type; signal_name2: mode signal_type; ... signal_nameN: mode signal_type);] [declarative_part] [begin statement_part] end [entity] [entity_name];
- ARCHITECTURE
architecture arch_name of entity_name is [declarative_part] begin statement_part end [architecture] [arch_name];
- Exemplo - Declaração de uma porta NAND em VHDL
library std;
use std.standard.all;
entity nand_gate is
port (a, b: in bit; x: out bit);
end entity;
architecture nome_arch of nand_gate is
begin
x <= a nand b;
end architecture;
- Exemplo 2.2 (VHDL) - programação de um flip-flop
-- Declaração das bibliotecas e pacotes
LIBRARY ieee;
USE ieee.std_logic_1164.all;
-- Especificação de todas as entradas e saídas do circuito
ENTITY flip_flop IS
PORT (d, clk, rst: IN STD_LOGIC;
q: OUT STD_LOGIC);
END;
-- Descrição de como o circuito deve funcionar
ARCHITECTURE flip_flop OF flip_flop IS
BEGIN
PROCESS (clk, rst)
BEGIN
IF (rst='1') THEN
q <= '0';
ELSIF (clk'EVENT AND clk='1') THEN
q <= d;
END IF;
END PROCESS;
END;
- Após a criação do projeto em VHDL utilizando a descrição de hardware acima, compile o código VHDL.
- Use o RTL Viewer para ver a descrição RTL do circuito.
- Use o Technology Map Viewer para ver a como o circuito foi mapeado para os elementos lógicos disponíveis no dispositivo FPGA selecionado (EP1C3T100A8)
- Abra o Chip Planner e observe no Node Properties como esse circuito é conectado dentro do dispositivo FPGA selecionado
- Aula 4 (23 Ago) - Introdução ao VHDL e ambienta EDA - QUARTUS
- Estrutura do código VHDL
- Exemplo 2.3 (VHDL e QSIM) - programação de um circuito somador com registrador
- Realizar as simulações funcional e temporal do circuito
- Observar o "Technology Map" e o "RTL" do circuito
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY registered_comp_add IS
PORT (clk: IN STD_LOGIC;
a, b: IN INTEGER RANGE 0 TO 7;
reg_comp: OUT STD_LOGIC;
reg_sum: OUT INTEGER RANGE 0 TO 15);
END;
ARCHITECTURE circuit OF registered_comp_add IS
SIGNAL comp: STD_LOGIC;
SIGNAL sum: INTEGER RANGE 0 TO 15;
BEGIN
comp <= '1' WHEN a>b ELSE '0';
sum <= a + b;
PROCESS (clk)
BEGIN
IF (clk'EVENT AND clk='1') THEN
reg_comp <= comp;
reg_sum <= sum;
END IF;
END PROCESS;
END;
- Acrescente saídas para o sinal sum e para o sinal comp, de modo a poder observar estes sinais no simulador QSIM e realize novas simulações funcional e temporal.
- Para conhecer melhor o ambiente do simulador QSIM veja Arquivo:Quartus II Simulation.pdf da ALTERA.
- Ver pag. 3 a 24 de [2]
Unidade 3
- Aula 5 (25 Ago)
- Tipos de Dados em VHDL.
- Objetos de VHDL: CONSTANT, SIGNAL, VARIABLE, FILE.
- Palavra chave OTHERS
- Ver pag. 31 a 35 de [2]
- Aula 6 (29 Ago)
- Tipos de Dados em VHDL.
- Bibliotecas padrão IEEE (std_logic_1164, numeric_std).
- ATENÇÃO!!! Não use as bibliotecas que não são padrão (std_logic_arith, std_logic_unsigned, std_logic_signed)
- Classificação dos tipos de dados.
- Tipos de dados: BIT, BIT_VECTOR, BOOLEAN, INTEGER, NATURAL, POSITIVE, CHARACTER, STRING, STD_(U)LOGIG, STD_(U)LOGIG_VECTOR
- Exemplo 3.1 Buffer Tri-state
- Exemplo 3.2 Circuito com Saida "don't care"
- Ver pag. 39 a 51 de [2]
- Tipos de dados: SIGNED e UNSIGNED
- Exemplo 3.3 Multiplicador (un)signed
- Tipos de dados: FIXED e FLOAT (apenas conhecer)
- Resumo dos Tipos predefinidos (Tabela 3.6).
- Tipos definidos pelo usuário:
- Escalares (Inteiros e Enumerados)
- Tipos de Array 1D x 1D, 2D , 1D x 1D x 1D, 3D
- RECORD e SUBTYPE
- Exemplo 3.8: Multiplexador com porta 1D x 1D.
- Ver pag. 51 a 73 de [2]
Unidade 4
- Aula 13 (13 Set)
- Código Concorrente.
- Uso de Operadores
- WHEN, SELECT;
- Exemplo 5.1 + 5.2 mux: com 3 tipos de arquiteturas (com operadores, com WHEN, com SELECT)
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY mux IS
GENERIC (N: INTEGER :=8);
PORT (x0, x1, x2, x3: IN STD_LOGIC_VECTOR(N-1 DOWNTO 0);
sel: IN STD_LOGIC_VECTOR(1 DOWNTO 0);
y: OUT STD_LOGIC_VECTOR(N-1 DOWNTO 0));
END mux;
-- Arquitetura para a implementação discreta através de portas AND e OR
ARCHITECTURE Operator_only OF mux IS
signal sel0_8: STD_LOGIC_VECTOR(N-1 DOWNTO 0);
signal sel1_8: STD_LOGIC_VECTOR(N-1 DOWNTO 0);
BEGIN
sel0_8 <= (OTHERS => sel(0));
sel1_8 <= (OTHERS => sel(1));
y <= (NOT sel1_8 AND NOT sel0_8 AND x0) OR
(NOT sel1_8 AND sel0_8 AND x1) OR
(sel1_8 AND NOT sel0_8 AND x2) OR
(sel1_8 AND sel0_8 AND x3);
END operators_only;
- Para selecionar uma entre várias arquiteturas para a mesma ENTITY use a CONFIGURATION.
CONFIGURATION which_mux OF mux IS
FOR Operator_only END FOR;
-- FOR with_WHEN END FOR;
-- FOR with_SELECT END FOR;
END CONFIGURATION;
- Ver pag. 121 a 127 de [2]
Avaliações
- Avaliação A1 - Unidade 2 a 4 (XX/XX/2016) - Local: Lab Redes II.
- Avaliação A2 - Unidade 5 a 7 (XX/XX/2016) - Local: Lab Redes II.
- As avaliações A1 e A2 são com consulta apenas as folhas VHDL QUICK REFERENCE CARD e VHDL 1164 PACKAGES QUICK REFERENCE CARD.
- Recuperação R1-2 - Unidade 2 a 7 (XX/XX/2016) - Local: Lab Redes II.
- Ao final das avaliações o aluno deverá enviar para o email moecke AT ifsc.edu.br com os arquivos solicitados.
- Entrega dos Atividades Extraclasse ao longo do semestre AE1 a AE(N-1). Os prazos serão indicados aqui na Wiki
- Projeto Final APF (XX/XX/2016).
Atividades extraclasse
Neste tópico serão listadas as atividades extraclasse que os alunos/equipes deverão realizar ao longo do semestre.
PARA ENTREGAR
AE1 - Temas relacionados aos DLPS (Prazo de entrega do resumo (500 caracteres/ 1 pagina): 09 setembro 2016 até as 23:59), Prazo de entrega do artigo: 07 de outubro de 2016 |
---|
|
AE2 - Uso de código concorrente - ALU multiplicadora (Prazo de entrega 30/09/2016) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ENTITY alu IS
GENERIC (N: INTEGER := 4); --word bits
PORT (
A, B: IN STD_LOGIC_VECTOR(N-1 DOWNTO 0);
opcode: IN STD_LOGIC_VECTOR(4 DOWNTO 0);
Y: OUT STD_LOGIC_VECTOR(N-1 DOWNTO 0));
END ENTITY;
|
ARTIGOS ENTREGUES
- 2016-2
- 2016-1
- Arquitetura FPGAs e CPLDs da ALTERA (André Felippe Weber, Helenluciany Cechinel, Maria Luiza Theisges)
- Aplicações de FPGA em Robótica (Letícia Aparecida Coelho, Katharine Schaeffer Fertig, Kristhine Schaeffer Fertig)
- FPGA aplicado a aviônica: Problemas e soluções (Gabriel Cantu, Lucas Lucindo, Thiago Grisolfi)
- Aplicações na Área Espacial (Marcos Vinicios Pinho, Fabiano Kraeamer, Iago Soares)
- Arquitetura FPGAs e CPLDs da XILINK (Anderson Demetrio, Gustavo Constante, Tamara Arrigoni)
- 2015-2
- DLPs: passado, presente e futuro (Walter Cardoso de Freitas Júnior, Gustavo Vieira Zacchi, Giulio Oliveira)
- Transitores CMOS, história e tecnologia (Fernando Müller da Silva, Gustavo Paulo Medeiros da Silva)
- Linguagens de Descrição de Hardware: Tipos e Características (João Vitor Rodrigues, Marcus Vinicius Bunn)
- Fabricantes e ferramentas para programação de DLPs (Ronaldo João Borges, Roicenir Girardi Rostirolla)
- Interface JTAG (Stephany Padilha Guimarães, Lucas Gomes de Farias, Vinicius Bandeira)
- 2015-1
- Formas como PLDs são Programados
- EPROM - EEPROM Dispositivos Lógicos Programáveis
- Aplicações de antifusíveis e PROMs na programação de PDLs
ESTUDOS SEM ENTREGA DE DOCUMENTAÇÃO
Os exemplos e exercícios essenciais estão destacados em negrito na listagens abaixo.
Recursos de Laboratório
Quartus/Modelsim/QSIM
Nos laboratórios do IFSC, os softwares Quartus/Modelsim/QSIM estão disponíveis diretamente na plataforma LINUX. Utilize preferencialmente a versão 13.0sp1 (32 bits), pois ela tem suporte para os FPGAs mais antigos como a familia Cyclone I.
Para uso fora do IFSC dos recursos computacionais com licença educacional, o IFSC disponibiliza para seus alunos o IFSC-CLOUD. Atualmente a forma mais eficiente de acesso é através do Cliente X2GO. O procedimento de instalação/ configuração e uso do Quartus/Modelsim/QSIM está descrito em Acesso ao IFSC-CLOUD#Cliente X2GO (recomendado).
Para a geração de documentação/relatórios técnicos/artigos, está disponibilizada a plataforma Sharelatex do IFSC-CLOUD. Utilize preferencialmente o modelo de artigo no padrão ABNT.
Links auxiliares
- Aritmética com vetores em VDHL
- Preparando para gravar o circuito lógico no FPGA
- Dicas de como eliminar o repique das chaves mecânicas
- Dicas para resolver ERROS de síntese do VHDL no Quartus II
- Materiais da ALTERA para Quartus II 13.1
- Modelo para uso em relatórios
- Configuração e uso do Time Quest Analyser
- Configuração e uso do Signal Tap
- DLP29006-Engtelecom(2015-1) - Prof. Marcos Moecke
- DLP29006-Engtelecom(2015-2) - Prof. Marcos Moecke
- DLP29006-Engtelecom(2016-1) - Prof. Marcos Moecke
Livros/Resumos sobre VHDL
- Regras de codificação em VHDL
- VHDL Handbook - Hardi (apenas VHDL’87 e VHDL’93)
- VHDL Math Tricks of the Trade by Jim Lewis
- VHDL QUICK REFERENCE CARD - Qualis (r2.1)
- VHDL 1164 PACKAGES QUICK REFERENCE CARD - Qualis (r2.2)
- VDHL ref
- Listagem dos packages
- Palavras reservadas
- Atributos predefinidos
- Aritmética em VHDL
Packages não padronizados
- Std logic arith.vhd by Synopsys
- std_logic_arith.vhd by Synopsys
- std_logic_arith.vhd by Mentor Graphics
- std_logic_arith.vhd by Vinaya
- Std logic unsigned.vdh by Synopsys
- std_logic_unsigned.vhd by Synopsys
Simulador Modelsim
- Site Mentor Graphics - Software Version 10.0
- ModelSim InfoHub - Software Version v10.2c
- ModelSim Quick Video Demo - precisa fazer login na Mentor Graphics.
- ModelSim® Tutorial -v10.0d
- ModelSim® Reference Manual -v10.0d
- ModelSim® User’s Manual -v10.0d
- ModelSim® Quick Guide -v10.0d
- ModelSim® SE GUI Reference Manual -v10.2c
Fabricantes de DLPs
- Altera, new Altera
- Xilinx, PLDs
- Lattice
- Microsemi
- Atmel
- Achronix
- Tabula, Who killed the FPGA startup Tabula semiconductor?
- Market share 2013
- INTEL
Fabricantes de kits com DLPS
Leituras recomendadas
- USE OF FIELD PROGRAMMABLE GATE ARRAY TECHNOLOGY IN FUTURE: SPACE AVIONICS, Roscoe C. Ferguson, Robert Tate, NASA.
- Expect a Breakthrough Advantage in NextGeneration FPGAs, Stephen Lim, ALTERA.
- A Reconfigurable Fabric for Accelerating Large-Scale Datacenter Services, Microsoft.
Padrões IEEE para o VDHL
Os padrões IEEE [4]estão disponíveis para consulta se você estiver na rede do IFSC. Para a linguagem VHDL consulte os padrões: 1164,1076
- IEEE Standard Multivalue Logic System for VHDL Model Interoperability (Std_logic_1164)
- IEEE Std 1076.1: Behavioural languages – Part 1-1: VHDL language reference manual
- IEEE Std 1076.1: Behavioural languages – Part 6: VHDL Analog and Mixed-Signal Extensions
- IEEE Std 1076.1.1™-2011 - IEEE Standard for VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support, REDLINE
- IEEE Standard for VHDL Register Transfer Level (RTL) Synthesis
- IEEE Standard VHDL Analog and Mixed-Signal Extensions
- IEEE Standard VHDL Synthesis Packages
- IEEE Std 1076-2002: IEEE Standard VHDL Language Reference Manual
- IEEE Std 1076.2-1996: IEEE Standard VHDL Mathematical Packages
Packages da IEEE
Referências Bibliográficas: