Last change
on this file since 94 was 2, checked in by Rick van der Zwet, 15 years ago |
Initial import of data of old repository ('data') worth keeping (e.g. tracking
means of URL access statistics)
|
-
Property svn:executable
set to
*
|
File size:
858 bytes
|
Rev | Line | |
---|
[2] | 1 | /* Author : Rick van der Zwet
|
---|
| 2 | * S-number : 0433373
|
---|
| 3 | * Version : $Id: control.h 363 2007-12-03 06:07:31Z rick $
|
---|
| 4 | * Copyright : FreeBSD Licence
|
---|
| 5 | * Description : Memory unit header
|
---|
| 6 | */
|
---|
| 7 |
|
---|
| 8 | #ifndef CONTROL_H
|
---|
| 9 | #define CONTROL_H
|
---|
| 10 |
|
---|
| 11 | #include "sim.h"
|
---|
| 12 | #include "alu.h"
|
---|
| 13 | #include "memory.h"
|
---|
| 14 | #include "imm.h"
|
---|
| 15 | #include "constant.h"
|
---|
| 16 | #include "datapath.h"
|
---|
| 17 |
|
---|
| 18 |
|
---|
| 19 | typedef enum { NEXT, UNCOND, MEMBUSY, DECODE1, DECODE2, DECODE3,
|
---|
| 20 | ZEROVALUE, NEGVALUE, RTYPEIR } control_cond_t;
|
---|
| 21 |
|
---|
| 22 |
|
---|
| 23 | /* XXX: Not that effient, might be the use of bitfields */
|
---|
| 24 | typedef struct {
|
---|
| 25 | address_t address;
|
---|
| 26 | control_t control;
|
---|
| 27 | control_cond_t cond;
|
---|
| 28 | micro_address_t jump;
|
---|
| 29 | } microcode_t;
|
---|
| 30 |
|
---|
| 31 | typedef struct {
|
---|
| 32 | uint8_t ocode;
|
---|
| 33 | uint8_t fcode;
|
---|
| 34 | micro_address_t target;
|
---|
| 35 | } decode_t;
|
---|
| 36 |
|
---|
| 37 |
|
---|
| 38 | micro_address_t mpc;
|
---|
| 39 | void set_signals();
|
---|
| 40 | void find_new_mPC();
|
---|
| 41 | void control_init();
|
---|
| 42 |
|
---|
| 43 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.