SMOK


Last modified:
Sloop Cebollita
  CSE Home  About Us    Search    Contact Info 

SMOK / Cebollita
 SMOK Documentation
 Cebollita Documentation
Courses Using SMOK
 UVa CS/ECE 333
 UW CSE 378
 

SMOK (pronounced smOk) and CEBOLLITA are tools designed to improve the student design experience in an undergraduate machine organization course.  Their purpose is to improve the relevance of homework assignments to machine organization in general, and to emphasize some fundamental concepts not well addressed previously, particularly in the area of the hardware-software interface, .

SMOK is a general-purpose software machine organization simulator. The components of a SMOK model are at the level of detail found in typical machine organization texts:  ALUs, register files, logic gates, and the like. SMOK provides a graphical interface to construct and debug machine models.

CEBOLLITA is a "complete system" - a C-like language (C--), a compiler, a linker, a loader, a utility to format a raw disk, a primitive operating system and shell, and a MIPS-like ISA. Students implement the ISA in SMOK. Cebollita exposes them to the interactions among all these components. Each component is simple enough that it can be modified easily, allowing design tradeoffs to be experienced, rather than just discussed.

The SLOOP was the original inspiration for building SMOK. The Sloop was inspirational in deciding to build the SLOOP.


Department of Computer Science & Engineering
University of Washington
Box 352350
Seattle, WA  98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to zahorjan@cs.washington.edu]