2014/08/30_FPGAで3to8decorder
FPGA
お久しぶりです。
最近は忙しいこともあってかホームページの更新ができていません。
お盆中も勉強しようと思いつつ、中々できなかったです。(休み中だらけるやつ~)
実は、休み中に大学からFPGAを借りて動かしていたわけですが、どうにも中身がブラックボックスだったり、
verilog-HDLの記述が分からなかったりで、悩んでいました。
そのような理由から、基礎の基礎から勉強することにして、簡単なロジック回路の設計をしました。
それというのが、3to8decorder(出力H)です。
以下ソース
decorder3to8.v
`timescale 1ns / 1ps module decorder( input wire [2:0] SSW, output reg [7:0] LED ); always@(SSW)begin case(SSW) 3'b000:LED <= 8'b00000001; 3'b001:LED <= 8'b00000010; 3'b010:LED <= 8'b00000100; 3'b011:LED <= 8'b00001000; 3'b100:LED <= 8'b00010000; 3'b101:LED <= 8'b00100000; 3'b110:LED <= 8'b01000000; 3'b111:LED <= 8'b10000000; endcase end endmodule
decorder3to8.ucf
NET "LED(7)" LOC = N12; NET "LED(6)" LOC = P16; NET "LED(5)" LOC = D4; NET "LED(4)" LOC = M13; NET "LED(3)" LOC = L14; NET "LED(2)" LOC = N14; NET "LED(1)" LOC = M14; NET "LED(0)" LOC = U18; NET "SSW[2]" LOC = C14; NET "SSW[1]" LOC = D14; NET "SSW[0]" LOC = A10;
このような感じです。
動作例スライドスイッチが初期値(全てOFFのとき)はLED0が点灯。
スライドスイッチが010(SSW1のみONのとき)はLED2が点灯。
上記のような感じです。
次は階層構造を使用した回路を設計したいと思います。