Steam-powered Turing Machine University of Washington Computer Science & Engineering
 CSE 378 Fall 2006
  CSE Home     CSE 378 Fall 2006  About Us    Search    Contact Info 

 Home
Administrative
 Syllabus
 Office Hours
 Mailing List
Assignments
 Reading
 Homework
 Labs
 Exams
Resources
 Lecture Slides
 Handouts
 Wiki
 MIPS Resources
 AHDL Resources
Anonymous Feedback
 Feedback Form
   

Wiring Units

Module: extender

This unit takes an input of one bit width and produces an output of a larger bit width. The intended use is to perform extension task on the immediate portion of instructions. The CTL signal determines how the extension is performed.  The module performs the following operations:

  • zero extension - fills in required bits with 0's
  • sign extension - maintain the sign of the number
  • left alignment - make the msb of the input the msb of the output ( equivalent to left-shift by O_WIDTH - I_WIDTH bits)
  • shift amount extraction - shift the input right 6 bits and mask with 0x1F (extracts the shamt field from R-Format instructions )

Parameters:

 
Name Default Description
ALIGN_L 2'b10 Value to input to CTL for left alignment
DIFF 16 Difference in width between input and output ports
GET_SHIFT 2'b11 Value to input to CTL for getting shift amount
SIGN_EX 2'b01 Value to input to CTL for sign extension
ZERO_EX 2'b0 Value to input to CTL for zero extension

Port Description:

 
Name Dir Width Description
IN In 16 input bits
CTL In 2 controls the type of transformation
OUT Out 32 shifted output bits

Symbols:

 
 


CSE logo Computer Science & Engineering
University of Washington
Box 352350
Seattle, WA  98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to Course Staff]