`timescale 1ns / 1ps

////////////////////////////////////////////////////////////////////////////////
// Company: 
// Engineer:
//
// Create Date:   19:28:41 08/28/2009
// Design Name:   ShiftRegister
// Module Name:   N:/myhome/Teaching/2009_2010/Gateway/ShiftingTheWorld_Lab4/ShiftRegisterTB.v
// Project Name:  ShiftingTheWorld_Lab4
// Target Device:  
// Tool versions:  
// Description: 
//
// Verilog Test Fixture created by ISE for module: ShiftRegister
//
// Dependencies:
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
////////////////////////////////////////////////////////////////////////////////

module ShiftRegisterTB;

	// Inputs
	reg [3:0] IN;
	reg CLK;

	// Outputs
	wire [3:0] OUT0;
	wire [3:0] OUT1;
	wire [3:0] OUT2;
	wire [3:0] OUT3;
	wire [3:0] OUT4;
	wire [3:0] OUT5;
	wire [3:0] OUT6;
	wire [3:0] OUT7;

	// Instantiate the Unit Under Test (UUT)
	ShiftRegister uut (
		.IN(IN), 
		.OUT0(OUT0), 
		.OUT1(OUT1), 
		.OUT2(OUT2), 
		.OUT3(OUT3), 
		.OUT4(OUT4), 
		.OUT5(OUT5), 
		.OUT6(OUT6), 
		.OUT7(OUT7), 
		.CLK(CLK)
	);

	initial begin
		CLK = 0;
		forever #50 CLK = ~ CLK;
	end
	
	initial begin
		// Initialize Inputs
		IN = 0;
		
		#100 IN = 1;
		#100 IN = 2;
		#100 IN = 3;
		#100 IN = 4;
		#100 IN = 5;
		#100 IN = 6;
		#100 IN = 7;
		#100 IN = 8;
		#100 IN = 9;
		// Wait 100 ns for global reset to finish
		#100;
        
		// Add stimulus here

	end
      
endmodule

