Итак, сейчас я примерно определился со стилем изложения сего «кривоучителя».
В краце: завтра стартую с вводной главы, про то «шо енто такое и с чем его есть» . Все будет писаться на примере Alterы с еёйным Quartus-ом. По началу никакой аппаратной базы не потребуется, далее хватит любой FPGA со свободными выводами в кол-ве 20-30 штук и наличием
(
Read more... )
Comments 9
Reply
Reply
Reply
Reply
Reply
Сейчас допишу вводную часть и выложу, она это слегка объяснит.
Reply
возможности - очень нравятся.
я немного работаю с аврками. Ты мне сейчас показал что можно зделать классно.
Очень жду рассказа о том как это сделать и как можно с небольшими усилиями сделать что-то вроде «хелло ворд».
Смотря на свои ощущения - меня иногда пугает первичное погружение в область.
Reply
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.NUMERIC_STD.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY CTL IS
PORT(
CLK: IN STD_LOGIC;
DOUT1: OUT STD_LOGIC_VECTOR(0 TO 6);
DOUT2: OUT STD_LOGIC_VECTOR(0 TO 6)
);
END ENTITY;
ARCHITECTURE CTL_ARCH OF CTL IS
SIGNAL CNT: STD_LOGIC_VECTOR(0 TO 3):="0000";
BEGIN
PROCESS(CLK)
BEGIN
IF (CLK'EVENT AND CLK='1') THEN
IF CNT = "1011" THEN CNT <= "0000";
END IF;
CASE CNT IS
WHEN "0000" => DOUT1 <= "1001000"; DOUT2 <="1111111";--H
WHEN "0001" => DOUT1 <= "0110001"; DOUT2 <="1111111";--E
WHEN "0010" => DOUT1 <= "1110001"; DOUT2 <="1111111";--L
WHEN "0011" => DOUT1 <= "1110001"; DOUT2 <="1111111";--L
WHEN "0100" => DOUT1 <= "0000001"; DOUT2 <="1111111";--O
WHEN "0101" => DOUT1 <= "1111111"; DOUT2 <="1111111";--
WHEN "0110" => DOUT1 <= "1100001"; DOUT2 <="1000001"; --W(1) W(2)
WHEN "0111" => DOUT1 <= "0000001"; DOUT2 <="1111111";--O
WHEN "1000" => DOUT1 <= "0011000"; DOUT2 <="1111111";--R
WHEN "1001" => DOUT1 ( ... )
Reply
Leave a comment