tutorial active hdl

Download Tutorial Active Hdl

Post on 09-Apr-2016

6 views

Category:

Documents

0 download

Embed Size (px)

DESCRIPTION

O objetivo deste tutorial apresentar de forma simples e objetiva o uso bsico da ferramenta Active-HDL para implementao e simulao de circuitos digitais descritos em VHDL.

TRANSCRIPT

  • VLSI :: TUTORIAL

    PROGRAMA DE PS-GRADUAO EM CINCIA DA COMPUTAO PPGCC IFCE

    Active-HDL Implementao e Simulao em VHDL

    MARACANA 2015.2

    FAUSTO SAMPAIO

    O objetivo deste tutorial apresentar de forma

    simples e objetiva o uso bsico da ferramenta

    Active-HDL para implementao e simulao de

    circuitos digitais descritos em VHDL.

  • Tutorial: Active-HDL| Fausto Sampaio

    1

    Sumrio Introduo ..................................................................................................................................... 2

    Linguagem VHDL ....................................................................................................................... 2

    IDE Active-HDL........................................................................................................................... 2

    Caso de Estudo .............................................................................................................................. 3

    Entidade de projeto .................................................................................................................. 4

    Declarao da entidade e corpo da arquitetura ................................................................... 4

    Classe de objetos ................................................................................................................... 5

    Tipos ...................................................................................................................................... 5

    Operadores ............................................................................................................................ 5

    Comando PROCESS ............................................................................................................ 6

    Interagindo com a IDE Active-HDL ................................................................................................ 6

    Criando um novo arquivo .......................................................................................................... 8

    Compilando o cdigo ................................................................................................................ 9

    Simulando o projeto ................................................................................................................ 10

    Configurando as entradas para simulao .............................................................................. 11

    Resultado da simulao .......................................................................................................... 12

    Caso de Estudo 2 ......................................................................................................................... 13

    Cdigo do segundo exemplo ................................................................................................... 13

    Resultado do segundo exemplo .............................................................................................. 13

    Possveis aplicaes ..................................................................................................................... 14

  • Tutorial: Active-HDL| Fausto Sampaio

    2

    Introduo

    A maior parte deste tutorial baseia-se na obra VHDL Descrio e Sntese de Circuitos

    Digitais de Roberto dAmore como referencial terico e implementao/simulao de alguns

    exerccios presentes no livro.

    Linguagem VHDL

    VHDL ou "VHSIC Hardware Description Language" (Linguagem de descrio de hardware

    VHSIC "Very High Speed Integrated Circuits") uma linguagem usada para facilitar o design

    (projeto/concepo) de circuitos digitais em CPLDs, FPGAs e ASICs.

    uma linguagem de descrio de hardware, ou seja, uma forma estruturada para a

    descrio de circuitos digitais. Essa linguagem permite que o circuito eletrnico seja descrito

    com sentenas, tais como em uma linguagem de programao, possibilitando que seja simulado

    e sintetizado, isto , transformado em portas lgicas.

    IDE Active-HDL

    Active-HDL uma ferramenta baseada em Windows, permite a criao e simulao de

    projetos integrados em FPGA. A mesma tambm permite desenvolvimento com ambientes

    baseados em equipe. A IDE inclui uma HDL completa e um conjunto de ferramentas grficas para

    a rpida implantao e verificao de projetos em FPGA.

    Para adquirir a verso estudante da ferramenta, acesse o link abaixo e aps um breve

    cadastro, um link para o endereo do download da IDE ser enviado para seu e-mail cadastrado.

    Active-HDL Student Edition - https://www.aldec.com/students/student.php?id=5

    Figura 1: Tela inicial do Active-HDL Student Edition

  • Tutorial: Active-HDL| Fausto Sampaio

    3

    Caso de Estudo

    Como caso de estudo utilizaremos o exemplo do Quadro 6.6.1 ilustrado no livro de

    Roberto dAmore que apresenta um exerccio baseado em mquinas de estados.

    Na Figura 2, ilustrado o diagrama de estados de uma mquina com quatro estados que

    realiza uma contagem entre os valores 00, 01, 11 e 10, simulando um contador Gray de

    2 bits. Para simplificao do circuito, o valor que representa o estado atual corresponde ao valor

    das sadas. A mquina inclui, tambm, uma entrada para inicializao assncrona denominada

    rst.

    Figura 2: Mquina de quatro estados

    A Figura 3 apresenta uma possvel descrio para a mquina de estado proposta. O

    cdigo contm uma construo do tipo IF ELSE que detecta condies: sinal rst ativo e

    ocorrncia de uma borda de subida no sinal de clock. O sinal rst ativo leva a mquina para o

    estado 00, e a ocorrncia de uma transio entre 0 e 1 no sinal ck leva a uma mudana

    de estado. O estado futuro determinado por uma construo CASE WHEN, sendo o estado

    atual o valor das sadas.

    Figura 3: Cdigo do exemplo proposto

  • Tutorial: Active-HDL| Fausto Sampaio

    4

    Para entender melhor o cdigo da Figura 3, abordaremos de forma introdutria alguns

    elementos que compem uma descrio em VHDL, tais como entidade de projeto, classes de

    objeto, tipos e operadores.

    Entidade de projeto Em VHDL, uma entidade de projeto ilustrada na Figura 4, pode representar desde uma

    simples porta lgica a um sistema completo, e composta de duas partes: declarao da

    entidade e arquitetura. A declarao da entidade define a interface entre entidade e o ambiente

    exterior, como, por exemplo, entradas e sadas de um circuito. A arquitetura contm a

    especificao das relaes entre as entradas e sadas de uma entidade.

    Declarao da entidade e corpo da arquitetura A Figura 5 apresenta a declarao para a entidade do nosso caso de estudo. A declarao

    inicia com a palavra reservada ENTITY seguida do nome que a identifica. A clusula PORT

    empregada para definir o modo e tipo das portas de entrada e sada da descrio.

    O modo de uma porta determina a direo e como os comandos na arquitetura podem

    operar com as portas. Existem quatro modos possveis de uma porta: IN, OUT, BUFFER e

    INOUT.

    Nos modos IN e OUT, h portas que operam exclusivamente como entrada e sada.

    No modo BUFFER, a porta opera unicamente no modo sada, diferenciando do modo OUT

    porque o valor apresentado pode ser referenciado internamente pela arquitetura. Uma porta

    do modo OUT no pode, por exemplo, controlar um sinal interno da entidade; no caso de uma

    porta do tipo BUFFER, isso permitido. O modo INOUT caracteriza uma porta bidirecional.

    O corpo de uma arquitetura inicia-se com a palavra reservada ARCHITECTURE seguida

    de um nome identificador e o nome da declarao de entidade associada. As linhas seguintes

    podem conter declaraes de sinais e constantes, declaraes que identificam os componentes

    externos utilizados ela arquitetura, bem como a descrio completa de subprogramas que so

    utilizados localmente pela arquitetura. Os comandos concorrentes que descrevem a entidade

    ficam entre as palavras reservadas BEGIN e END.

    Figura 4: Exemplo de entidade de projeto

    Figura 5: Declarao da Entidade do Caso de Estudo

  • Tutorial: Active-HDL| Fausto Sampaio

    5

    A Figura 6 apresenta a arquitetura do nosso caso de estudo.

    Figura 6:Arquitetura do caso de estudo

    Classe de objetos Objetos so elementos que contm um valor armazenado. Quatro classes de objetos

    so definidas em VHDL: CONSTANT, VARIABLE, SIGNAL e FILE.

    Tipos Objetos de tipos diferentes no permitida a transferncia de valores. Na Figura 7 so

    ilustrados os tipos disponveis pela linguagem VHDL.

    Figura 7: Exemplo de tipos pr-definidos no pacote padro VHDL

    Operadores Os operadores definidos so divididos em classes que estabelecem a precedncia na

    execuo das operaes. Na Figura 8 so apresentadas, em ordem crescente de precedncia, as

    classes de operaes. Os operadores de mesma classe possuem o mesmo nvel de precedncia.

    Figura 8: Operadores definidos por classe

  • Tutorial: Active-HDL| Fausto Sampaio

    6

    Comando PROCESS Um processo permite definir um rea contendo comandos sequncias. A palavra

    reservada PROCESS identifica o comando conforme o formato apresentado na Figura 9. Um

    processo composto de duas regies: parte de declarao e a parte de comandos sequenciais;

    A primeira regio o local para a declarao de tipos e subtipos, constantes, variveis,

    entre outros. A declarao de sinais no permitida. A segunda regio, aps a palavra reservada

    BEGIN, inicia a rea contendo comandos sequenciais que representam o comportamento de

    uma parte ou de toda des