Asee peer logo

On The Use Of A Soft Processor Core In Computer Engineering Education

Download Paper |

Conference

2006 Annual Conference & Exposition

Location

Chicago, Illinois

Publication Date

June 18, 2006

Start Date

June 18, 2006

End Date

June 21, 2006

ISSN

2153-5965

Conference Session

Digital System Design

Tagged Division

Electrical and Computer

Page Count

6

Page Numbers

11.972.1 - 11.972.6

DOI

10.18260/1-2--165

Permanent URL

https://peer.asee.org/165

Download Count

377

Request a correction

Paper Authors

author page

Sin Ming Loo Boise State University

Download Paper |

Abstract
NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract

On the Use of a Soft Processor Core in Computer Engineering Education Abstract

The microprocessor course at most universities has traditionally been taught using a discrete microprocessor such as the Motorola 6800 series, Intel x86 series, or IBM PowerPC series. With the continued increase of usable field-programmable gate arrays (FPGA) gates and improvement of off-the- shelf soft processor core computer-aided design (CAD) tools, this practice is beginning to change. It is now possible to teach a microprocessor course using a soft processor core such as Xilinx Microblaze or Altera Nios. Such tools provide the user a graphical user interface to configure a 32-bit processor with the desired peripherals. This type of tool provides flexibility that was previously non existent.

In the traditional method, interface devices need to be built into the microprocessor prototyping printed- circuit board. Otherwise, the additional interface devices will need to be built and wired to the main board. With the use of a soft processor core and an FPGA board with a sizable FPGA, all of the required interface logic can be built into the FPGA. Such hardware logic can be described using hardware description languages (Verilog or VHDL) or schematic capture. The FPGA functionality can be changed easily by downloading a new bit file (or configuration file) to the FPGA after re-running the synthesis tools.

These off-the-shelf tools have also been packaged with software development tools such as compilers, debuggers, and instruction set simulators, which are usually GCC-based. The encapsulation of hardware and software components into one FPGA design process also allows the hardware and software designs to be simulated – together – using a hardware description language simulator. However, the use of such tools doesn’t come free (remember, there is no such thing as a free lunch!). There are many pitfalls when using a soft processor core in teaching. These off-the-shelf CAD tools usually have steep learning curves. In some cases, a non-working design can have problems in the hardware or software portion, which can be difficult to track. This paper describes teaching microprocessor design using a soft processor core, our experiences, our methodology, and the pitfalls in depth.

1 Introduction During the last three decades, the microprocessor course has traditionally been taught using a discrete microprocessor such as the Motorola 6800 series, Intel x86 series, or IBM PowerPC series. The usual topics include the architecture of a selected microprocessor or microcontroller, assembly and C programming, and devices interfacing. Usually, an off-the-shelf prototyping board with the desired microprocessor/microcontroller is used in the laboratory to introduce the hands-on experience. This well- thought-out course structure has been working really well, and students completing this course usually have the skills to build a small-scale system.

Things are starting to change in embedded system design due to field programmable devices. In the old days, programmable devices were used as glue logic, but their use is no longer limited to this role. Programmable devices have also been benefited from the shrinking of transistors, allowing more resources to be packed into a programmable device. With the continued increase of usable FPGA gates and improvement of off-the-shelf soft processor core computer-aided design (CAD) tools, it is now possible to teach a microprocessor course using a soft processor core such as Xilinx Microblaze [1] or Altera Nios [2]. Such tools provide the user a graphical user interface to configure a 32-bit processor with the desired peripherals. This type of tool provides flexibility that was previously non existent.

In order to use the processor effectively and the FPGA efficiently, vendors package a suite of tools with software development tools such as compilers, debuggers, and instruction set simulators, which are

1

Loo, S. M. (2006, June), On The Use Of A Soft Processor Core In Computer Engineering Education Paper presented at 2006 Annual Conference & Exposition, Chicago, Illinois. 10.18260/1-2--165

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2006 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015