Мелкие вопросы по цифровой технике.

Обсуждаем цифровые устройства...
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Мелкие вопросы по цифровой технике.

Сообщение Meteor »

Может кто подскажет что может быть не так?
Судя по всему нет назначения, ведь отсутствуют выходные сигналы.
Сложно в вашем тексте разбираться, научитесь его вкладывать файлом.
Вот к примеру сравните как сделан тестбенч

Код: Выделить всё

library ieee;
use ieee.numeric_std.all;
use ieee.std_logic_1164.all;

Entity cmd_detector_test IS
Generic(
		witch:natural:=3;
		len:natural:=6
		);
PORT(
		enabled:out std_logic_vector(len-1 downto 0)
		);
End entity cmd_detector_test;

ARCHITECTURE test OF cmd_detector_test IS

--BEGIN

signal 		clk, strt:std_logic:='0';
signal		cmd:std_logic_vector(witch-1 downto 0):="000";

component cmd_detector IS
Generic(
		witch:natural:=3;
		len:natural:=6
		);
PORT(
		clk, strt:in std_logic;
		cmd:in std_logic_vector(witch-1 downto 0);
		enabled:out std_logic_vector(len-1 downto 0)
		);
End component;

BEGIN
D: cmd_detector
PORT MAP(
		clk=>clk,
		strt=>strt,
		cmd=>	cmd,
		enabled=>enabled
		);
		
clock:process
	begin
	wait for 10 ns; clk<=not clk;
end process;

comd:process
	variable cmd_v:unsigned(2 downto 0):="000";
	constant step:unsigned(2 downto 0):="001";
	begin
	wait for 100 ns; cmd<=std_logic_vector(cmd_v);
	wait for 60 ns; strt<='1';
	wait for 100 ns; strt<='0';
	wait for 40 ns; cmd_v:=cmd_v+step;
end process;
end test;
Соответственно проверяем cmd_detector, объявляем его как компонент, включаем и затем уже тестируем. У ас я подключения не нашел
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Реклама
Аватара пользователя
dimitriy91
Вымогатель припоя
Сообщения: 619
Зарегистрирован: Ср июн 08, 2011 15:37:56
Откуда: ДВ

Re: Мелкие вопросы по цифровой технике.

Сообщение dimitriy91 »

Вот файлы, тест бенча и самого кода:

Код: Выделить всё

IBRARY ieee;
USE ieee.std_logic_1164.ALL;
 
-- Uncomment the following library declaration if using
-- arithmetic functions with Signed or Unsigned values
--USE ieee.numeric_std.ALL;
 
ENTITY test IS
END test;
 
ARCHITECTURE behavior OF test IS 
 
    -- Component Declaration for the Unit Under Test (UUT)
 
    COMPONENT SHIFT_REGISTER_24_bit
    PORT(
         DATA : INOUT  std_logic_vector(0 to 7);
         CS : IN  std_logic;
         SH : IN  std_logic;
         IN_OUT : IN  std_logic;
         CLK : IN  std_logic;
         WR_RD : IN  std_logic;
         RL : IN  std_logic;
         PARITET : OUT  std_logic;
         ZER : OUT  std_logic;
         out_TR : OUT  std_logic_vector(0 to 9);
			stat	: OUT  STD_LOGIC_VECTOR (0 to 1)
        );
    END COMPONENT;
    

   --Inputs
   signal CS : std_logic := '1';
   signal SH : std_logic := '1';
   signal IN_OUT : std_logic := '0';
   signal CLK : std_logic := '1';
   signal WR_RD : std_logic := '1';
   signal RL : std_logic := '0';

	--BiDirs
   signal DATA : std_logic_vector(0 to 7);

 	--Outputs
   signal PARITET : std_logic;
   signal ZER : std_logic;
   signal out_TR : std_logic_vector(0 to 9);
	signal stat   : std_logic_vector(0 to 1);

   -- Clock period definitions
   constant CLK_period : time := 10 ns;
 
BEGIN


--RROC_CD : process
--begin
--CS <= 
--end process RROC_CD;

RROC_WR_RD : process
begin
WR_RD <= '1' , '1' after 10 ns, '1' after 20 ns, '1' after 30 ns,	'1' after 40 ns,
			'0' after 50 ns, '0' after 60 ns, '0' after 70 ns;
wait for 80 ns;			
end process;

RROC_SH : process
begin
SH <= '0' , '0' after 10 ns, '0' after 20 ns, '1' after 30 ns, '1' after 40 ns,
		'0' after 50 ns, '0' after 60 ns, '0' after 70 ns ;
		wait for 80 ns;
end process;
 
	-- Instantiate the Unit Under Test (UUT)
   uut: SHIFT_REGISTER_24_bit PORT MAP (
          DATA => DATA,
          CS => CS,
          SH => SH,
          IN_OUT => IN_OUT,
          CLK => CLK,
          WR_RD => WR_RD,
          RL => RL,
          PARITET => PARITET,
          ZER => ZER,
          out_TR => out_TR,
			 stat => stat
        );

   -- Clock process definitions
   CLK_process :process
	begin		
		CLK <= '0';
		wait for CLK_period/2;
		CLK <= '1';
		wait for CLK_period/2;
   end process;
 

   -- Stimulus process
   stim_proc: process
   begin		
      -- hold reset state for 100 ns.
      wait for 100 ns;	

      wait for CLK_period*10;

      -- insert stimulus here 

      wait;
   end process;

END;
Вложения
kurs_project.rar
(485.89 КБ) 155 скачиваний
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Реклама
Аватара пользователя
dimitriy91
Вымогатель припоя
Сообщения: 619
Зарегистрирован: Ср июн 08, 2011 15:37:56
Откуда: ДВ

Re: Мелкие вопросы по цифровой технике.

Сообщение dimitriy91 »

Может , я не так выразился ? Могу выложить всё в отдельных текстовых документах, в одном код в другом тест бенч
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Аватара пользователя
falkonist
Друг Кота
Сообщения: 4471
Зарегистрирован: Вс мар 04, 2007 11:39:00
Откуда: Ukraine, Kyiv
Контактная информация:

Re: Мелкие вопросы по цифровой технике.

Сообщение falkonist »

Зайти в БИОС и установить в нем питание от АТХ.
Выслушай и противную сторону, даже если она и противна
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
dimitriy91
Вымогатель припоя
Сообщения: 619
Зарегистрирован: Ср июн 08, 2011 15:37:56
Откуда: ДВ

Re: Мелкие вопросы по цифровой технике.

Сообщение dimitriy91 »

Если закомментировать память автомата :

--TRIG1_AVT : DFF
--port map( CLK => CLK,D => exсit_fun_line(0),Q => state_line(0));
--TRIG2_AVT : DFF
--port map( CLK => CLK,D => exсit_fun_line(1),Q => state_line(1));

то времянки начинают работать , почему так происходит?
Вложения
Project.txt
(12.39 КБ) 170 скачиваний
tect bench.txt
(2.52 КБ) 242 скачивания
Снимок.JPG
(100.61 КБ) 414 скачиваний
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Реклама
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Мелкие вопросы по цифровой технике.

Сообщение Meteor »

Пока подправил сам тест бенч

Код: Выделить всё

IBRARY ieee;
USE ieee.std_logic_1164.ALL;
 
-- Uncomment the following library declaration if using
-- arithmetic functions with Signed or Unsigned values
--USE ieee.numeric_std.ALL;
 
ENTITY test IS
PORT(
         PARITET : OUT  std_logic;
         ZER : OUT  std_logic;
         out_TR : OUT  std_logic_vector(0 to 9);
	stat	: OUT  STD_LOGIC_VECTOR (0 to 1)
);
END test;
 
ARCHITECTURE behavior OF test IS 

 
    -- Component Declaration for the Unit Under Test (UUT)
 
    COMPONENT SHIFT_REGISTER_24_bit IS
    PORT(
         DATA : INOUT  std_logic_vector(0 to 7);
         CS : IN  std_logic;
         SH : IN  std_logic;
         IN_OUT : IN  std_logic;
         CLK : IN  std_logic;
         WR_RD : IN  std_logic;
         RL : IN  std_logic;
         PARITET : OUT  std_logic;
         ZER : OUT  std_logic;
         out_TR : OUT  std_logic_vector(0 to 9);
	stat	: OUT  STD_LOGIC_VECTOR (0 to 1)
        );
    END COMPONENT;
    

   --Inputs
   signal CS : std_logic := '1';
   signal SH : std_logic := '1';
   signal IN_OUT : std_logic := '0';
   signal CLK : std_logic := '1';
   signal WR_RD : std_logic := '1';
   signal RL : std_logic := '0';

	--BiDirs
--   signal DATA : std_logic_vector(0 to 7);

 	--Outputs
 --  signal PARITET : std_logic;
 --  signal ZER : std_logic;
 --  signal out_TR : std_logic_vector(0 to 9);
--	signal stat   : std_logic_vector(0 to 1);

   -- Clock period definitions
 --  constant CLK_period : time := 10 ns;
 
BEGIN
Shift:SHIFT_REGISTER_24_bit
    PORT MAP(
         DATA =>DATA,
         CS =>CS,
         SH =>SH
         IN_OUT=>IN_OUT,
         CLK=>CLK,
         WR_RD =>WR_RD,
         RL =>RL,
         PARITET=>PARITET,
         ZER =>ZER,
         out_TR =>out_TR,
	stat=>stat
        );

clock:process
   begin
    wait for 10 ns; clk<=not clk --частота 50 МГц непрерывно
end process;


---------ВСЕ что ниже - не разбирал--
--RROC_CD : process
--begin
--CS <= 
--end process RROC_CD;

RROC_WR_RD : process
begin
WR_RD <= '1' , '1' after 10 ns, '1' after 20 ns, '1' after 30 ns,	'1' after 40 ns,
			'0' after 50 ns, '0' after 60 ns, '0' after 70 ns;
wait for 80 ns;			
end process;

RROC_SH : process
begin
SH <= '0' , '0' after 10 ns, '0' after 20 ns, '1' after 30 ns, '1' after 40 ns,
		'0' after 50 ns, '0' after 60 ns, '0' after 70 ns ;
		wait for 80 ns;
end process;
 
	-- Instantiate the Unit Under Test (UUT)
   uut: SHIFT_REGISTER_24_bit PORT MAP (
          DATA => DATA,
          CS => CS,
          SH => SH,
          IN_OUT => IN_OUT,
          CLK => CLK,
          WR_RD => WR_RD,
          RL => RL,
          PARITET => PARITET,
          ZER => ZER,
          out_TR => out_TR,
			 stat => stat
        );

   -- Clock process definitions
   CLK_process :process
	begin		
		CLK <= '0';
		wait for CLK_period/2;
		CLK <= '1';
		wait for CLK_period/2;
   end process;
 

   -- Stimulus process
   stim_proc: process
   begin		
      -- hold reset state for 100 ns.
      wait for 100 ns;	

      wait for CLK_period*10;

      -- insert stimulus here 

      wait;
   end process;

END behavior;
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Реклама
Аватара пользователя
dimitriy91
Вымогатель припоя
Сообщения: 619
Зарегистрирован: Ср июн 08, 2011 15:37:56
Откуда: ДВ

Re: Мелкие вопросы по цифровой технике.

Сообщение dimitriy91 »

Извините , но что вы там поправили? То что немного генератор такта задали и всё? Мой тоже неплохо работает.
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Мелкие вопросы по цифровой технике.

Сообщение Meteor »

Компонент вы добавили, но не в исполняемую часть.
ENTITY test IS
PORT(
PARITET : OUT std_logic;
ZER : OUT std_logic;
out_TR : OUT std_logic_vector(0 to 9);
stat : OUT STD_LOGIC_VECTOR (0 to 1)

);
END test;
и
Shift:SHIFT_REGISTER_24_bit
PORT MAP(
DATA =>DATA,
CS =>CS,
SH =>SH
IN_OUT=>IN_OUT,
CLK=>CLK,
WR_RD =>WR_RD,
RL =>RL,
PARITET=>PARITET,
ZER =>ZER,
out_TR =>out_TR,
stat=>stat
);
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Аватара пользователя
dimitriy91
Вымогатель припоя
Сообщения: 619
Зарегистрирован: Ср июн 08, 2011 15:37:56
Откуда: ДВ

Re: Мелкие вопросы по цифровой технике.

Сообщение dimitriy91 »

Ничего не понимаю, что бы провести тестирование схемы , нам нужен объект с уровнем иерархии выше проектного ( регистра_24) , т.к. объект сам себе сигналы не может присвоить, для этого я создал тест бенч , можно и другой модуль создать. В тест бенче декларировал пустой интерфейс ( т.к. с ним никто не будет взаимодействовать) , после объявил компоненты и сигналы , обозначил какие сигналы куда подключать с помощью карты портов и создал процессы где присваиваю сигналам значения и соответственно внутреннему объекту иерархии ( регистру_24). Я думаю в бенче ошибок нету, а вот в операционной части , что то с автоматом творится , не знаю что с ним делать))))))
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Мелкие вопросы по цифровой технике.

Сообщение Meteor »

Одну особенность заметил при отладке в МоделСиме.
К примеру есть устройство содержащее компоненты D1, D2 и D3.
Были оттестированы D1 и D3, а D2 как "ну чего там тестить? и так понятно!" не моделировался в МоделСиме.
В итоге - строятся только те сигналы, которые смогли протеститься на основе имеющихся данных, т.е. для D1 и D3.
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Аватара пользователя
dimitriy91
Вымогатель припоя
Сообщения: 619
Зарегистрирован: Ср июн 08, 2011 15:37:56
Откуда: ДВ

Re: Мелкие вопросы по цифровой технике.

Сообщение dimitriy91 »

Не доверяет людям программа ))))
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Аватара пользователя
ranger93
Вымогатель припоя
Сообщения: 560
Зарегистрирован: Пт июл 02, 2010 19:30:22
Откуда: Новосибирск / Магнитогорск

Re: Мелкие вопросы по цифровой технике.

Сообщение ranger93 »

Был в биосе в настройках питания, нет там такой опции, он вроде как сам определяет, от какого источника питание. Может стоит в сторону джамперов смотреть, за что они вообще отвечают?
Главное, чтоб был источник ЭДС, а с остальным разберемся :).
Аватара пользователя
dimitriy91
Вымогатель припоя
Сообщения: 619
Зарегистрирован: Ср июн 08, 2011 15:37:56
Откуда: ДВ

Re: Мелкие вопросы по цифровой технике.

Сообщение dimitriy91 »

на блоке питания есть чёрный и зелёный провода, при нажатии кнопки пуск мать замыкает их. После выключения должна разомкнуть, но ведать что то сломалось или перемычка стоит там где не надо.
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Аватара пользователя
ranger93
Вымогатель припоя
Сообщения: 560
Зарегистрирован: Пт июл 02, 2010 19:30:22
Откуда: Новосибирск / Магнитогорск

Re: Мелкие вопросы по цифровой технике.

Сообщение ranger93 »

Вот я и думаю, какая не на месте перемычка?... Есть ли какой-либо стандарт по количеству и расположению перемычек? а то не все на плате подписано....

Проблемы выявила себя, софт не работает с железом, видимо, ибо на кнопку выключения реагирует нормально, а вот на команду выключения только останавливает систему, ладно, с этим жить можно).
Главное, чтоб был источник ЭДС, а с остальным разберемся :).
Аватара пользователя
Грендайзер
Мучитель микросхем
Сообщения: 479
Зарегистрирован: Вт июн 02, 2009 22:38:40
Откуда: Город-герой Москва

Re: Мелкие вопросы по цифровой технике.

Сообщение Грендайзер »

Дико извиняюсь, но появилать необходимость писать не сложные приложения под винду(в основном, простенькие оболочки управление портами, возможно нехитрые вычисления, и тому подобное). Хотелось бы делать это на С++, языка не знаю, но выучу, опыт программирования имеется, правда программировал я лишь "железки", поэтому, как то растерялся и даже не могу сориентироваться с чего начать, а точнее какую оболочку для программирования использовать. Хотел VISUAL STUDIO но на торрентах стоко этой дряни, что выбрать просто не могу, сёрвес паки там всякие, компоненты какието, дополнения. Может кто посоветует, что нибудь не очень тяжёлое (в смысле размера), и по которому достаточно литературы и ресурсов в нете, для сравнительно быстрого старта...
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: Мелкие вопросы по цифровой технике.

Сообщение Z_h_e »

Грендайзер писал(а):...под винду(в основном, простенькие оболочки...
Для таких задач нет ничего лучше Делфи.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
dimitriy91
Вымогатель припоя
Сообщения: 619
Зарегистрирован: Ср июн 08, 2011 15:37:56
Откуда: ДВ

Re: Мелкие вопросы по цифровой технике.

Сообщение dimitriy91 »

Я считаю , что ближе к душе то и лучше. Си ближе всего к железу.
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Аватара пользователя
Грендайзер
Мучитель микросхем
Сообщения: 479
Зарегистрирован: Вт июн 02, 2009 22:38:40
Откуда: Город-герой Москва

Re: Мелкие вопросы по цифровой технике.

Сообщение Грендайзер »

Скачал вижуал студио 2005... ну теперь буду себе нервы трепать. Спасибо за помощь :)
Аватара пользователя
dimitriy91
Вымогатель припоя
Сообщения: 619
Зарегистрирован: Ср июн 08, 2011 15:37:56
Откуда: ДВ

Re: Мелкие вопросы по цифровой технике.

Сообщение dimitriy91 »

Советую книгу Фролов Фролов библиотека системного программиста.
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: Мелкие вопросы по цифровой технике.

Сообщение Z_h_e »

dimitriy91 писал(а):Я считаю , что ближе к душе то и лучше. Си ближе всего к железу.
Ну ближе всего к железу машинный код.

Нисколько не отговариваю человека от C++. Просто это была в некотором роде заметка, так сказать константация факта о соотношении цены качества под данную задачу. Ну если человеку хочется более высого качества, быть может даже неоправданно затратного, дык ради бога. Картошку вон тоже зачастую дешевле купить чем выростить, но люди ее сажают, чтобы занять себя.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Ответить

Вернуться в «Цифровая техника»