ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
13 ноября
600695 Топик полностью
Mahagam (28.05.2015 11:38, просмотров: 308) ответил POV на Вот так вот смог сделать чтобы блок реагировал на два фронта независимо друг от друга (ценой дополнительных ячеек)...
уже лучше. теперь перепишем это немного лаконичнее. 
module shift18 (
	output [17:0] q,
	input clock,
	input shiftin,
	input inc
);	

reg [17:0]	temp1;
reg [17:0]	temp2;
reg		sour;
	
	always @(posedge inc or posedge clock)
		if (clock)	sour <= 0;
		else		sour <= 1;

	always @(posedge inc)
		temp1 <= q + 1;
	
	always @(posedge clock)
		temp2 <= {q[16:0], shiftin};
	
	assign q = (sour) ? temp1 : temp2;

endmodule
но даже так тут есть ошибки. и ошибки уже связанные чисто с архитектурой практически всех плисин. в плисинах клоковых деревьев не так много. эти линии оочень оптимизированы по задержкам и крайне желательно, чтобы на тактовый вход триггера приходили только эти самые клоки. а также желательно, чтобы эти самые клоки приходили только на тактовые входы. а тут мы видим а) в качестве тактовых используются два сигнала. клок и инк. б) клок используется в условиях. блёй буду, но явно синтезатор где-то выдавал предупреждения на этот счёт!