OpenCores
URL https://opencores.org/ocsvn/c16/c16/trunk

Subversion Repositories c16

[/] [c16/] [trunk/] [doc/] [c16.pdf] - Diff between revs 12 and 26

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 12 Rev 26
%PDF-1.2 
%âãÏÓ
%PDF-1.2 
%âãÏÓ
 
10 0 obj
<<
/Length 11 0 R
>>
stream
 
10 0 obj
<<
/Length 11 0 R
>>
stream
BT
176.16 703.92  TD
0 0 0 rg 
/F0 24  Tf
0.0505  Tc -0.0505  Tw (C16 CPU Documentation) Tj
-104.16 -44.88  TD /F0 18  Tf
0.12  Tc 0  Tw (1) Tj
56.64 0  TD 0  Tc -0.06  Tw (History \(why it is as it is\)) Tj
-50.88 -23.04  TD /F1 12  Tf
0.0632  Tc 0.2518  Tw (In early 2003, I had finished the design of an STM-1/STM-4 framer. The next step foreard was) Tj
-5.76 -13.92  TD 0.0941  Tc -0.2274  Tw (extensive testing, but how? Since I was only using 30% of my FPGA \(a Virtex 100E on an Avnet) Tj
0 -14.16  TD 0.057  Tc -0.267  Tw (board\), I thought a microcontroller on the FPGA would be the easiest solution. The plan was sim-) Tj
0 -13.92  TD 0.0608  Tc 0.0192  Tw (ple enough: download a free CPU core, combine it with the STM framer, and that would be it. A) Tj
T* 0.08  Tc -0.2171  Tw (weekend or two should suffice. Well, not exactly.) Tj
5.76 -20.16  TD 0.0896  Tc -0.317  Tw (The first try was an open Z80 core. I chose Z80 since I was programming a lot of Z80 assembler) Tj
-5.76 -13.92  TD 0.0585  Tc -0.2985  Tw (back in the 70s \(after the Z80, I fell in love with the 68000\). After downloading the core, I figured) Tj
0 -13.92  TD 0.0668  Tc 0.8265  Tw (that it did not fit into my FPGA. After analyzing the situation, I came to the conclusion, that a) Tj
0 -14.16  TD 0.0949  Tc -0.3649  Tw (8080 would probably be small enough. Since I couldn) Tj
-2.64  Tc 0  Tw (\222) Tj
0.08  Tc -0.41  Tw (t a suitable core, I wrote one myself, which) Tj
0 -13.92  TD 0.083  Tc -0.4641  Tw (was finished some weekends later. At some point in time - all instructions were working, but I had) Tj
T* 0.0576  Tc 1.1424  Tw (not implemented interrupts yet - I thought it was time to look for a C compiler. I had a small) Tj
0 -14.16  TD 0.0717  Tc 1.3683  Tw (loader that would read intel hex records over a serial interface into the FPGA memory. After) Tj
0 -13.92  TD 0.0708  Tc 0.0845  Tw (searching on the web for some time, I learned that most C compilers were requiring a Z80 rather) Tj
T* 0.0849  Tc 0.2351  Tw (than a 8080, and the few 8080 compilers I found had some limitations that I didn) Tj
-2.64  Tc 0  Tw (\222) Tj
0.0923  Tc 0.2277  Tw (t like. At least) Tj
0 -14.16  TD 0.0662  Tc -0.2033  Tw (the assemblers I found were ok, so I decided to write my own C compiler.) Tj
5.76 -19.92  TD 0.0765  Tc 2.2935  Tw (A few weekends later, it was already mid 2003, The C compiler for the 8080 was ready.) Tj
-5.76 -13.92  TD 0.0686  Tc 0.9284  Tw (Although I exercised some care in generating compact code, even small C programs generated) Tj
0 -14.16  TD 0.081  Tc 0.219  Tw (quite some code, and I had only 8kByte of internal FPGA memory left. I analyzed the generated) Tj
0 -13.92  TD 0.0616  Tc 0.0717  Tw (code, and found that the 8080 was not really made for C. For example, ANDing two 16 bit num-) Tj
T* 0.0431  Tc -0.1116  Tw (bers would create a lot of instructions, like:) Tj
28.32 -20.16  TD /F0 12  Tf
-0.06  Tc 0  Tw (LD) Tj
56.64 0  TD 0.04  Tc -0.16  Tw (A, C) Tj
-56.64 -13.92  TD 0  Tc 0  Tw (AND) Tj
56.64 0  TD -0.12  Tw (A, E) Tj
-56.64 -13.92  TD -0.06  Tc 0  Tw (LD) Tj
56.64 0  TD 0  Tc -0.12  Tw (E, A) Tj
-56.64 -14.16  TD -0.06  Tc 0  Tw (LD) Tj
56.64 0  TD 0.08  Tc -0.2  Tw (A, B) Tj
-56.64 -13.92  TD 0  Tc 0  Tw (AND) Tj
56.64 0  TD 0.04  Tc -0.16  Tw (A, D) Tj
-56.64 -13.92  TD -0.06  Tc 0  Tw (LD) Tj
56.64 0  TD 0.04  Tc (D,A) Tj
-79.2 -20.16  TD /F1 12  Tf
0.069  Tc -0.369  Tw (Even though \(or actually because\) the 8080 had quite a few registers, the compiler had no choice) Tj
-5.76 -13.92  TD 0.0369  Tc -0.4369  Tw (but to move operands back and forth between these registers. Contrary to common wisdom I came) Tj
0 -13.92  TD 0.0486  Tc -0.1153  Tw (to the conclusion that a good CPU does not have as many registers as possible, but instead as few) Tj
0 -14.16  TD 0.0839  Tc -0.2839  Tw (registers as possible. The reasons for this is that \(1\) in FPGAs, internal memory is about as fast as) Tj
0 -13.92  TD 0.1096  Tc 0.2744  Tw (registers, and \(2\) for preemptive multitasking \(which I had in mind from the beginning\), a small) Tj
T* 0.0638  Tc 1.8402  Tw (number of registers leads to faster context switches, since all registers need to be saved and) Tj
0 -14.16  TD -0.0533  Tc 0  Tw (restored.) Tj
5.76 -19.92  TD 0.0876  Tc -0.3009  Tw (The next step was then to design my own CPU. Since I was no longer bound by existing compil-) Tj
-5.76 -13.92  TD 0.0263  Tc 0.1379  Tw (ers or instruction sets, I could design the CPU in order to suit the compiler, rather than to write a) Tj
0 -14.16  TD 0.0296  Tc 0.9171  Tw (compiler that suits a given CPU. The approach I took was to \(1\) take the 8080 backend of my) Tj
0 -13.92  TD 0.0677  Tc 0.2023  Tw (compiler and to rewrite it towards a hypothetical CPU in such a way that most elementary back-) Tj
ET
endstream
endobj
11 0 obj
4815
endobj
4 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 10 0 R
>>
endobj
13 0 obj
<<
/Length 14 0 R
>>
stream
BT
176.16 703.92  TD
0 0 0 rg 
/F0 24  Tf
0.0505  Tc -0.0505  Tw (C16 CPU Documentation) Tj
-104.16 -44.88  TD /F0 18  Tf
0.12  Tc 0  Tw (1) Tj
56.64 0  TD 0  Tc -0.06  Tw (History \(why it is as it is\)) Tj
-50.88 -23.04  TD /F1 12  Tf
0.0632  Tc 0.2518  Tw (In early 2003, I had finished the design of an STM-1/STM-4 framer. The next step foreard was) Tj
-5.76 -13.92  TD 0.0941  Tc -0.2274  Tw (extensive testing, but how? Since I was only using 30% of my FPGA \(a Virtex 100E on an Avnet) Tj
0 -14.16  TD 0.057  Tc -0.267  Tw (board\), I thought a microcontroller on the FPGA would be the easiest solution. The plan was sim-) Tj
0 -13.92  TD 0.0608  Tc 0.0192  Tw (ple enough: download a free CPU core, combine it with the STM framer, and that would be it. A) Tj
T* 0.08  Tc -0.2171  Tw (weekend or two should suffice. Well, not exactly.) Tj
5.76 -20.16  TD 0.0896  Tc -0.317  Tw (The first try was an open Z80 core. I chose Z80 since I was programming a lot of Z80 assembler) Tj
-5.76 -13.92  TD 0.0585  Tc -0.2985  Tw (back in the 70s \(after the Z80, I fell in love with the 68000\). After downloading the core, I figured) Tj
0 -13.92  TD 0.0668  Tc 0.8265  Tw (that it did not fit into my FPGA. After analyzing the situation, I came to the conclusion, that a) Tj
0 -14.16  TD 0.0949  Tc -0.3649  Tw (8080 would probably be small enough. Since I couldn) Tj
-2.64  Tc 0  Tw (\222) Tj
0.08  Tc -0.41  Tw (t a suitable core, I wrote one myself, which) Tj
0 -13.92  TD 0.083  Tc -0.4641  Tw (was finished some weekends later. At some point in time - all instructions were working, but I had) Tj
T* 0.0576  Tc 1.1424  Tw (not implemented interrupts yet - I thought it was time to look for a C compiler. I had a small) Tj
0 -14.16  TD 0.0717  Tc 1.3683  Tw (loader that would read intel hex records over a serial interface into the FPGA memory. After) Tj
0 -13.92  TD 0.0708  Tc 0.0845  Tw (searching on the web for some time, I learned that most C compilers were requiring a Z80 rather) Tj
T* 0.0849  Tc 0.2351  Tw (than a 8080, and the few 8080 compilers I found had some limitations that I didn) Tj
-2.64  Tc 0  Tw (\222) Tj
0.0923  Tc 0.2277  Tw (t like. At least) Tj
0 -14.16  TD 0.0662  Tc -0.2033  Tw (the assemblers I found were ok, so I decided to write my own C compiler.) Tj
5.76 -19.92  TD 0.0765  Tc 2.2935  Tw (A few weekends later, it was already mid 2003, The C compiler for the 8080 was ready.) Tj
-5.76 -13.92  TD 0.0686  Tc 0.9284  Tw (Although I exercised some care in generating compact code, even small C programs generated) Tj
0 -14.16  TD 0.081  Tc 0.219  Tw (quite some code, and I had only 8kByte of internal FPGA memory left. I analyzed the generated) Tj
0 -13.92  TD 0.0616  Tc 0.0717  Tw (code, and found that the 8080 was not really made for C. For example, ANDing two 16 bit num-) Tj
T* 0.0431  Tc -0.1116  Tw (bers would create a lot of instructions, like:) Tj
28.32 -20.16  TD /F0 12  Tf
-0.06  Tc 0  Tw (LD) Tj
56.64 0  TD 0.04  Tc -0.16  Tw (A, C) Tj
-56.64 -13.92  TD 0  Tc 0  Tw (AND) Tj
56.64 0  TD -0.12  Tw (A, E) Tj
-56.64 -13.92  TD -0.06  Tc 0  Tw (LD) Tj
56.64 0  TD 0  Tc -0.12  Tw (E, A) Tj
-56.64 -14.16  TD -0.06  Tc 0  Tw (LD) Tj
56.64 0  TD 0.08  Tc -0.2  Tw (A, B) Tj
-56.64 -13.92  TD 0  Tc 0  Tw (AND) Tj
56.64 0  TD 0.04  Tc -0.16  Tw (A, D) Tj
-56.64 -13.92  TD -0.06  Tc 0  Tw (LD) Tj
56.64 0  TD 0.04  Tc (D,A) Tj
-79.2 -20.16  TD /F1 12  Tf
0.069  Tc -0.369  Tw (Even though \(or actually because\) the 8080 had quite a few registers, the compiler had no choice) Tj
-5.76 -13.92  TD 0.0369  Tc -0.4369  Tw (but to move operands back and forth between these registers. Contrary to common wisdom I came) Tj
0 -13.92  TD 0.0486  Tc -0.1153  Tw (to the conclusion that a good CPU does not have as many registers as possible, but instead as few) Tj
0 -14.16  TD 0.0839  Tc -0.2839  Tw (registers as possible. The reasons for this is that \(1\) in FPGAs, internal memory is about as fast as) Tj
0 -13.92  TD 0.1096  Tc 0.2744  Tw (registers, and \(2\) for preemptive multitasking \(which I had in mind from the beginning\), a small) Tj
T* 0.0638  Tc 1.8402  Tw (number of registers leads to faster context switches, since all registers need to be saved and) Tj
0 -14.16  TD -0.0533  Tc 0  Tw (restored.) Tj
5.76 -19.92  TD 0.0876  Tc -0.3009  Tw (The next step was then to design my own CPU. Since I was no longer bound by existing compil-) Tj
-5.76 -13.92  TD 0.0263  Tc 0.1379  Tw (ers or instruction sets, I could design the CPU in order to suit the compiler, rather than to write a) Tj
0 -14.16  TD 0.0296  Tc 0.9171  Tw (compiler that suits a given CPU. The approach I took was to \(1\) take the 8080 backend of my) Tj
0 -13.92  TD 0.0677  Tc 0.2023  Tw (compiler and to rewrite it towards a hypothetical CPU in such a way that most elementary back-) Tj
ET
endstream
endobj
11 0 obj
4815
endobj
4 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 10 0 R
>>
endobj
13 0 obj
<<
/Length 14 0 R
>>
stream
BT
72 712.08  TD
0 0 0 rg 
/F1 12  Tf
0.0644  Tc -0.375  Tw (end operations would need a single 8 bit instruction and \(2\) to design that hypothetical CPU in the) Tj
0 -14.16  TD 0.048  Tc 0  Tw (FPGA.) Tj
5.76 -19.92  TD 0.079  Tc -0.415  Tw (The first decision to make was the number of registers really required. Looking at C expressions,) Tj
-5.76 -13.92  TD 0.054  Tc 0.6942  Tw (it turns out that in most nodes of the parsing tree generated by the compiler consists of expres-) Tj
0 -14.16  TD 0.0736  Tc 0.2169  Tw (sions with a left and a right argument. Thus I gave the CPU two registers called LL and RR; LL) Tj
0 -13.92  TD 0.0439  Tc -0.4392  Tw (holds the left argument of a binary operator, RR the right argument, and the result would be stored) Tj
T* 0.0972  Tc 0.6934  Tw (in back in RR. For function calls and local variables, a stack pointer, SP, would be required as) Tj
0 -14.16  TD 0.0697  Tc -0.224  Tw (well. This leads to only three registers LL, RR, and SP. and that is enough.) Tj
5.76 -19.92  TD 0.053  Tc -0.069  Tw (The next question is that of addressing modes required. Another common wisdom is that a good) Tj
-5.76 -13.92  TD 0.0439  Tc 0.4079  Tw (instruction set is orthogonal, and this turns out to be as wrong as the believe that many registers) Tj
0 -14.16  TD 0.079  Tc 0.116  Tw (are good. In fact, what the compiler really needs is suffucient addressing modes for the leaves of) Tj
0 -13.92  TD 0.0723  Tc 0.1997  Tw (the parse tree \(which are always constants and variables\). Thus the instruction set should be rich) Tj
T* 0.066  Tc 2.0571  Tw (in immediated addressing \(e.g. for ++, --, and frequently used binary operators\), SP relative) Tj
0 -14.16  TD 0.0819  Tc 0.0927  Tw (addressing including pre-decrement and post increment for local variables, and absolute address-) Tj
0 -13.92  TD 0.0977  Tc -0.012  Tw (ing for global variables. Orthogonality is not required for these addressing modes, it is suffucient) Tj
T* 0.0889  Tc -0.3289  Tw (to have immediate addressing for the RR register only for most binary C operands, while absolute) Tj
0 -14.16  TD 0.0993  Tc -0.1993  Tw (addressing helps also for LL register if a variable is a left operand.) Tj
5.76 -19.92  TD 0.0741  Tc -0.3541  Tw (Another thing to get rid of was a flag register. Considering that in C you can have constructs like) Tj
22.56 -19.92  TD /F0 12  Tf
0.0171  Tc -0.0571  Tw (if \(x > y\)) Tj
113.52 0  TD /F1 12  Tf
0.18  Tc -0.42  Tw (as well as) Tj
-113.52 -20.16  TD /F0 12  Tf
-0.0343  Tc 0.1543  Tw (z = \(x > y\)) Tj
-22.56 -19.92  TD /F1 12  Tf
0.04  Tc 0.5  Tw (it makes more sense to have an opcode for a binary operator ) Tj
-2.64  Tc 0  Tw (\221) Tj
0  Tc (>) Tj
-2.64  Tc 3.12  Tw (\222 ) Tj
-0.01  Tc 0.61  Tw (rather than a compare opcode) Tj
-5.76 -13.92  TD 0.0259  Tc 0.4301  Tw (CMP, which sets a flag that needs to be checked later on. The good old 68000 had such a set of) Tj
0 -14.16  TD 0.03  Tc -0.0833  Tw (opcodes \(Scc - set according to condition cc\). Thus the decision was to provide a rich set of com-) Tj
0 -13.92  TD 0.0896  Tc -0.0096  Tw (parison operators and only a limited number of conditional brances \(JMP RRZ and JMP RRNZ -) Tj
T* 0.0881  Tc 0.1119  Tw (jump in RR is zero resp. non-zero\) instead of a single compare instruction and a rich set of jump) Tj
0 -14.16  TD 0.0538  Tc -0.1411  Tw (instructions. As a consequence, there is no flag register in our CPU.) Tj
5.76 -19.92  TD 0.0557  Tc 0.7751  Tw (The CPU operastes on 16  bit quantities only; concersion to and from ) Tj
348.24 0  TD /F0 12  Tf
-0.06  Tc 0  Tw (char) Tj
23.52 0  TD /F1 12  Tf
0.1108  Tc 0.8492  Tw ( is made when the) Tj
-377.52 -13.92  TD 0.0218  Tc 0.2182  Tw (operands are moved into or out of the RR and LL registers \(rather than having the same opcodes) Tj
0 -14.16  TD 0.0733  Tc 0.6467  Tw (for different sizes as with the 68000\), and ) Tj
210.24 0  TD /F0 12  Tf
0  Tc 0  Tw (long) Tj
22.08 0  TD /F1 12  Tf
0.012  Tc 0.738  Tw ( is not supported. The reason for not supporting) Tj
-232.32 -13.92  TD /F0 12  Tf
-0.06  Tc 0  Tw (long) Tj
22.08 0  TD /F1 12  Tf
0.081  Tc -0.321  Tw (  is essentially FPGA size. A byte operand move into a register is either zero extended or sign) Tj
-22.08 -13.92  TD 0.0425  Tc 0.0563  Tw (extended, as dictated by the opcode. In the assembler, we use the notation RU \(R unsigned\) for a) Tj
0 -14.16  TD 0.0523  Tc 0.3289  Tw (byte operand that is zero extended, RS \(R signed\) for a byte operand that is sign extendedm and) Tj
0 -13.92  TD 0.0343  Tc -0.1371  Tw (RR for a word operand. Likewise LU, LS, and LL for the left operand register.) Tj
5.76 -19.92  TD 0.0584  Tc 0.7816  Tw (Most immediate operannd and SP offsets can be short \(8 bit wide\) or long \(16 bit wide\) as to) Tj
-5.76 -14.16  TD 0.0457  Tc -0.2057  Tw (reduce the program size.) Tj
0 -36  TD /F0 18  Tf
0.12  Tc 0  Tw (2) Tj
56.64 0  TD -0.03  Tc (Installation) Tj
-50.88 -23.04  TD /F1 12  Tf
0.1108  Tc -0.3084  Tw (The CPU comes with an assembler, a C compiler, a simulator, and a few simple utilities for gen-) Tj
-5.76 -13.92  TD 0.105  Tc -0.21  Tw (erating vhdl files for the internal memory of the FPGA, communicating with serial ports on a PC,) Tj
0 -13.92  TD 0.0454  Tc 0.2696  Tw (and so on. Everything has been tested on Windows XP, but should also work on other Windows) Tj
ET
endstream
endobj
14 0 obj
5361
endobj
12 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 13 0 R
>>
endobj
16 0 obj
<<
/Length 17 0 R
>>
stream
BT
72 712.08  TD
0 0 0 rg 
/F1 12  Tf
0.0644  Tc -0.375  Tw (end operations would need a single 8 bit instruction and \(2\) to design that hypothetical CPU in the) Tj
0 -14.16  TD 0.048  Tc 0  Tw (FPGA.) Tj
5.76 -19.92  TD 0.079  Tc -0.415  Tw (The first decision to make was the number of registers really required. Looking at C expressions,) Tj
-5.76 -13.92  TD 0.054  Tc 0.6942  Tw (it turns out that in most nodes of the parsing tree generated by the compiler consists of expres-) Tj
0 -14.16  TD 0.0736  Tc 0.2169  Tw (sions with a left and a right argument. Thus I gave the CPU two registers called LL and RR; LL) Tj
0 -13.92  TD 0.0439  Tc -0.4392  Tw (holds the left argument of a binary operator, RR the right argument, and the result would be stored) Tj
T* 0.0972  Tc 0.6934  Tw (in back in RR. For function calls and local variables, a stack pointer, SP, would be required as) Tj
0 -14.16  TD 0.0697  Tc -0.224  Tw (well. This leads to only three registers LL, RR, and SP. and that is enough.) Tj
5.76 -19.92  TD 0.053  Tc -0.069  Tw (The next question is that of addressing modes required. Another common wisdom is that a good) Tj
-5.76 -13.92  TD 0.0439  Tc 0.4079  Tw (instruction set is orthogonal, and this turns out to be as wrong as the believe that many registers) Tj
0 -14.16  TD 0.079  Tc 0.116  Tw (are good. In fact, what the compiler really needs is suffucient addressing modes for the leaves of) Tj
0 -13.92  TD 0.0723  Tc 0.1997  Tw (the parse tree \(which are always constants and variables\). Thus the instruction set should be rich) Tj
T* 0.066  Tc 2.0571  Tw (in immediated addressing \(e.g. for ++, --, and frequently used binary operators\), SP relative) Tj
0 -14.16  TD 0.0819  Tc 0.0927  Tw (addressing including pre-decrement and post increment for local variables, and absolute address-) Tj
0 -13.92  TD 0.0977  Tc -0.012  Tw (ing for global variables. Orthogonality is not required for these addressing modes, it is suffucient) Tj
T* 0.0889  Tc -0.3289  Tw (to have immediate addressing for the RR register only for most binary C operands, while absolute) Tj
0 -14.16  TD 0.0993  Tc -0.1993  Tw (addressing helps also for LL register if a variable is a left operand.) Tj
5.76 -19.92  TD 0.0741  Tc -0.3541  Tw (Another thing to get rid of was a flag register. Considering that in C you can have constructs like) Tj
22.56 -19.92  TD /F0 12  Tf
0.0171  Tc -0.0571  Tw (if \(x > y\)) Tj
113.52 0  TD /F1 12  Tf
0.18  Tc -0.42  Tw (as well as) Tj
-113.52 -20.16  TD /F0 12  Tf
-0.0343  Tc 0.1543  Tw (z = \(x > y\)) Tj
-22.56 -19.92  TD /F1 12  Tf
0.04  Tc 0.5  Tw (it makes more sense to have an opcode for a binary operator ) Tj
-2.64  Tc 0  Tw (\221) Tj
0  Tc (>) Tj
-2.64  Tc 3.12  Tw (\222 ) Tj
-0.01  Tc 0.61  Tw (rather than a compare opcode) Tj
-5.76 -13.92  TD 0.0259  Tc 0.4301  Tw (CMP, which sets a flag that needs to be checked later on. The good old 68000 had such a set of) Tj
0 -14.16  TD 0.03  Tc -0.0833  Tw (opcodes \(Scc - set according to condition cc\). Thus the decision was to provide a rich set of com-) Tj
0 -13.92  TD 0.0896  Tc -0.0096  Tw (parison operators and only a limited number of conditional brances \(JMP RRZ and JMP RRNZ -) Tj
T* 0.0881  Tc 0.1119  Tw (jump in RR is zero resp. non-zero\) instead of a single compare instruction and a rich set of jump) Tj
0 -14.16  TD 0.0538  Tc -0.1411  Tw (instructions. As a consequence, there is no flag register in our CPU.) Tj
5.76 -19.92  TD 0.0557  Tc 0.7751  Tw (The CPU operastes on 16  bit quantities only; concersion to and from ) Tj
348.24 0  TD /F0 12  Tf
-0.06  Tc 0  Tw (char) Tj
23.52 0  TD /F1 12  Tf
0.1108  Tc 0.8492  Tw ( is made when the) Tj
-377.52 -13.92  TD 0.0218  Tc 0.2182  Tw (operands are moved into or out of the RR and LL registers \(rather than having the same opcodes) Tj
0 -14.16  TD 0.0733  Tc 0.6467  Tw (for different sizes as with the 68000\), and ) Tj
210.24 0  TD /F0 12  Tf
0  Tc 0  Tw (long) Tj
22.08 0  TD /F1 12  Tf
0.012  Tc 0.738  Tw ( is not supported. The reason for not supporting) Tj
-232.32 -13.92  TD /F0 12  Tf
-0.06  Tc 0  Tw (long) Tj
22.08 0  TD /F1 12  Tf
0.081  Tc -0.321  Tw (  is essentially FPGA size. A byte operand move into a register is either zero extended or sign) Tj
-22.08 -13.92  TD 0.0425  Tc 0.0563  Tw (extended, as dictated by the opcode. In the assembler, we use the notation RU \(R unsigned\) for a) Tj
0 -14.16  TD 0.0523  Tc 0.3289  Tw (byte operand that is zero extended, RS \(R signed\) for a byte operand that is sign extendedm and) Tj
0 -13.92  TD 0.0343  Tc -0.1371  Tw (RR for a word operand. Likewise LU, LS, and LL for the left operand register.) Tj
5.76 -19.92  TD 0.0584  Tc 0.7816  Tw (Most immediate operannd and SP offsets can be short \(8 bit wide\) or long \(16 bit wide\) as to) Tj
-5.76 -14.16  TD 0.0457  Tc -0.2057  Tw (reduce the program size.) Tj
0 -36  TD /F0 18  Tf
0.12  Tc 0  Tw (2) Tj
56.64 0  TD -0.03  Tc (Installation) Tj
-50.88 -23.04  TD /F1 12  Tf
0.1108  Tc -0.3084  Tw (The CPU comes with an assembler, a C compiler, a simulator, and a few simple utilities for gen-) Tj
-5.76 -13.92  TD 0.105  Tc -0.21  Tw (erating vhdl files for the internal memory of the FPGA, communicating with serial ports on a PC,) Tj
0 -13.92  TD 0.0454  Tc 0.2696  Tw (and so on. Everything has been tested on Windows XP, but should also work on other Windows) Tj
ET
endstream
endobj
14 0 obj
5361
endobj
12 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 13 0 R
>>
endobj
16 0 obj
<<
/Length 17 0 R
>>
stream
BT
72 712.08  TD
0 0 0 rg 
/F1 12  Tf
0.1037  Tc -0.0472  Tw (versions as well as Linux. I personally prefer Linux, but the fact that my Xilinx tools work under) Tj
0 -14.16  TD 0.0703  Tc -0.1903  Tw (Windows has kind of forced me to do the entire development on Windows.) Tj
0 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (2.1) Tj
56.64 0  TD 0.0513  Tc (Prerequisites) Tj
-50.88 -18.72  TD /F1 12  Tf
0.0576  Tc -0.1605  Tw (For Windows XP, you can use the ) Tj
167.04 0  TD /F0 12  Tf
0.03  Tc 0  Tw (.exe) Tj
19.68 0  TD /F1 12  Tf
0.1371  Tc -0.2571  Tw ( files provided.) Tj
-186.72 -19.92  TD 0.06  Tc -0.2446  Tw (For other Windows versions, the tools provided may or may not work without recompilation.) Tj
0 -19.92  TD 0.0655  Tc -0.2026  Tw (For Linux you need to compile the tools.) Tj
0 -20.16  TD 0.1108  Tc -0.3165  Tw (When compilation is required, you should have ) Tj
229.68 0  TD /F0 12  Tf
0.048  Tc 0  Tw (gmake) Tj
33.84 0  TD /F1 12  Tf
-0.24  Tc 0.24  Tw (, ) Tj
6 0  TD /F0 12  Tf
0.08  Tc 0  Tw (gcc) Tj
16.56 0  TD /F1 12  Tf
-0.24  Tc 0.24  Tw (, ) Tj
5.76 0  TD /F0 12  Tf
-0.024  Tc 0  Tw (bison) Tj
27.36 0  TD /F1 12  Tf
0.06  Tc -0.18  Tw (, and ) Tj
26.16 0  TD /F0 12  Tf
-0.12  Tc 0  Tw (flex) Tj
18.72 0  TD /F1 12  Tf
0.1067  Tc -0.3467  Tw (. The following sites) Tj
-369.84 -13.92  TD 0.042  Tc -0.1106  Tw (are useful for getting these tools for Windows:) Tj
56.64 -40.08  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD 0.0554  Tc (www.mingw.org) Tj
113.52 0  TD 0  Tc (\(gcc\)) Tj
-170.16 -13.92  TD -2.64  Tc (\225) Tj
56.64 0  TD -0.0218  Tc (www.gnu.org) Tj
113.52 0  TD 0.1067  Tc -0.1067  Tw (\(gmake, bison, flex\)) Tj
-221.04 -34.08  TD 0.12  Tc -0.2  Tw (Even if you don) Tj
-2.64  Tc 0  Tw (\222) Tj
0.09  Tc -0.234  Tw (t compile, I would recommend ) Tj
231.36 0  TD /F0 12  Tf
0  Tc 0  Tw (gmake) Tj
34.08 0  TD /F1 12  Tf
0.08  Tc -0.2  Tw ( and ) Tj
23.28 0  TD /F0 12  Tf
0  Tc 0  Tw (gcc) Tj
16.56 0  TD /F1 12  Tf
0.0662  Tc -0.1862  Tw ( at least. Our compiler does little) Tj
-311.04 -13.92  TD 0.1003  Tc 0.3797  Tw (type checking, so you should syntax-check your own files with gcc before running the compiler) Tj
0 -13.92  TD 0.0267  Tc 0  Tw (provided.) Tj
0 -29.52  TD /F0 13.92  Tf
-0.04  Tc (2.2) Tj
56.64 0  TD 0.0664  Tc -0.1864  Tw (Directory Structure) Tj
-50.88 -18.48  TD /F1 12  Tf
0.065  Tc -0.145  Tw (The entire package contains the following directories:) Tj
50.88 -40.08  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0.04  Tc (asm) Tj
113.52 0  TD /F1 12  Tf
0.048  Tc -0.168  Tw (source code for the assembler) Tj
-170.16 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0  Tc (compiler) Tj
113.52 0  TD /F1 12  Tf
0.0384  Tc -0.1344  Tw (source code for the C compiler) Tj
-170.16 -14.16  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0  Tc (doc) Tj
113.52 0  TD /F1 12  Tf
0.084  Tc -0.204  Tw (contains this document) Tj
-170.16 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0.08  Tc (memory) Tj
113.52 0  TD /F1 12  Tf
0.016  Tc -0.176  Tw (utility to create ) Tj
74.88 0  TD /F0 12  Tf
0.018  Tc 0  Tw (vhdl/mem_content.vhd) Tj
117.6 0  TD /F1 12  Tf
0.08  Tc -0.56  Tw ( and) Tj
19.92 0  TD /F0 12  Tf
0  Tc -0.36  Tw ( vhdl/) Tj
-212.4 -13.92  TD -0.0277  Tc 0  Tw (board_cpu.ucf) Tj
74.16 0  TD /F1 12  Tf
0.1407  Tc -0.2367  Tw ( \(Xilinx and Avnet board specific\)) Tj
-244.32 -14.16  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0.04  Tc (sim) Tj
113.52 0  TD /F1 12  Tf
0.0288  Tc -0.1488  Tw (source code for the simulator) Tj
-170.16 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
-0.06  Tc (vhdl) Tj
113.52 0  TD /F1 12  Tf
0.0424  Tc -0.1624  Tw (vhdl code for the CPU) Tj
-226.8 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (2.3) Tj
56.64 0  TD 0.0196  Tc 0.0524  Tw (Makefiles and Building the Base System) Tj
-50.88 -18.72  TD /F1 12  Tf
0.075  Tc -0.235  Tw (There are 3 different targets for the top level Makefile.) Tj
50.88 -40.08  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
-0.04  Tc (loader) Tj
113.52 0  TD /F1 12  Tf
0.0923  Tc -0.2423  Tw (a small program that loads a subsequent memory ) Tj
0 -13.92  TD 0.0825  Tc -0.2196  Tw (image from the serial port of the FPGA.) Tj
-170.16 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0.03  Tc (test) Tj
113.52 0  TD /F1 12  Tf
0.066  Tc -0.186  Tw (a small monitor program for testing various I/O ) Tj
0 -14.16  TD 0.08  Tc -0.24  Tw (functions of the FPGA) Tj
-170.16 -13.92  TD /F0 12  Tf
-2.76  Tc 0  Tw (\225) Tj
56.64 0  TD 0  Tc (rtos) Tj
113.52 0  TD /F1 12  Tf
0.0884  Tc -0.2804  Tw (the same monitor as for ) Tj
116.16 0  TD /F0 12  Tf
0.03  Tc 0  Tw (test) Tj
18 0  TD /F1 12  Tf
0.0706  Tc -0.1906  Tw (, but using a preemp-) Tj
-134.16 -13.92  TD 0.0852  Tc -0.1652  Tw (tive multitasking operating system) Tj
-221.04 -14.16  TD 0.0927  Tc -0.2927  Tw (The anticipated development process is as follows.) Tj
50.88 -19.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD 0.08  Tc -0.24  Tw (Copy the CPU package on your machine) Tj
ET
endstream
endobj
17 0 obj
5059
endobj
15 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 16 0 R
>>
endobj
19 0 obj
<<
/Length 20 0 R
>>
stream
BT
72 712.08  TD
0 0 0 rg 
/F1 12  Tf
0.1037  Tc -0.0472  Tw (versions as well as Linux. I personally prefer Linux, but the fact that my Xilinx tools work under) Tj
0 -14.16  TD 0.0703  Tc -0.1903  Tw (Windows has kind of forced me to do the entire development on Windows.) Tj
0 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (2.1) Tj
56.64 0  TD 0.0513  Tc (Prerequisites) Tj
-50.88 -18.72  TD /F1 12  Tf
0.0576  Tc -0.1605  Tw (For Windows XP, you can use the ) Tj
167.04 0  TD /F0 12  Tf
0.03  Tc 0  Tw (.exe) Tj
19.68 0  TD /F1 12  Tf
0.1371  Tc -0.2571  Tw ( files provided.) Tj
-186.72 -19.92  TD 0.06  Tc -0.2446  Tw (For other Windows versions, the tools provided may or may not work without recompilation.) Tj
0 -19.92  TD 0.0655  Tc -0.2026  Tw (For Linux you need to compile the tools.) Tj
0 -20.16  TD 0.1108  Tc -0.3165  Tw (When compilation is required, you should have ) Tj
229.68 0  TD /F0 12  Tf
0.048  Tc 0  Tw (gmake) Tj
33.84 0  TD /F1 12  Tf
-0.24  Tc 0.24  Tw (, ) Tj
6 0  TD /F0 12  Tf
0.08  Tc 0  Tw (gcc) Tj
16.56 0  TD /F1 12  Tf
-0.24  Tc 0.24  Tw (, ) Tj
5.76 0  TD /F0 12  Tf
-0.024  Tc 0  Tw (bison) Tj
27.36 0  TD /F1 12  Tf
0.06  Tc -0.18  Tw (, and ) Tj
26.16 0  TD /F0 12  Tf
-0.12  Tc 0  Tw (flex) Tj
18.72 0  TD /F1 12  Tf
0.1067  Tc -0.3467  Tw (. The following sites) Tj
-369.84 -13.92  TD 0.042  Tc -0.1106  Tw (are useful for getting these tools for Windows:) Tj
56.64 -40.08  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD 0.0554  Tc (www.mingw.org) Tj
113.52 0  TD 0  Tc (\(gcc\)) Tj
-170.16 -13.92  TD -2.64  Tc (\225) Tj
56.64 0  TD -0.0218  Tc (www.gnu.org) Tj
113.52 0  TD 0.1067  Tc -0.1067  Tw (\(gmake, bison, flex\)) Tj
-221.04 -34.08  TD 0.12  Tc -0.2  Tw (Even if you don) Tj
-2.64  Tc 0  Tw (\222) Tj
0.09  Tc -0.234  Tw (t compile, I would recommend ) Tj
231.36 0  TD /F0 12  Tf
0  Tc 0  Tw (gmake) Tj
34.08 0  TD /F1 12  Tf
0.08  Tc -0.2  Tw ( and ) Tj
23.28 0  TD /F0 12  Tf
0  Tc 0  Tw (gcc) Tj
16.56 0  TD /F1 12  Tf
0.0662  Tc -0.1862  Tw ( at least. Our compiler does little) Tj
-311.04 -13.92  TD 0.1003  Tc 0.3797  Tw (type checking, so you should syntax-check your own files with gcc before running the compiler) Tj
0 -13.92  TD 0.0267  Tc 0  Tw (provided.) Tj
0 -29.52  TD /F0 13.92  Tf
-0.04  Tc (2.2) Tj
56.64 0  TD 0.0664  Tc -0.1864  Tw (Directory Structure) Tj
-50.88 -18.48  TD /F1 12  Tf
0.065  Tc -0.145  Tw (The entire package contains the following directories:) Tj
50.88 -40.08  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0.04  Tc (asm) Tj
113.52 0  TD /F1 12  Tf
0.048  Tc -0.168  Tw (source code for the assembler) Tj
-170.16 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0  Tc (compiler) Tj
113.52 0  TD /F1 12  Tf
0.0384  Tc -0.1344  Tw (source code for the C compiler) Tj
-170.16 -14.16  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0  Tc (doc) Tj
113.52 0  TD /F1 12  Tf
0.084  Tc -0.204  Tw (contains this document) Tj
-170.16 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0.08  Tc (memory) Tj
113.52 0  TD /F1 12  Tf
0.016  Tc -0.176  Tw (utility to create ) Tj
74.88 0  TD /F0 12  Tf
0.018  Tc 0  Tw (vhdl/mem_content.vhd) Tj
117.6 0  TD /F1 12  Tf
0.08  Tc -0.56  Tw ( and) Tj
19.92 0  TD /F0 12  Tf
0  Tc -0.36  Tw ( vhdl/) Tj
-212.4 -13.92  TD -0.0277  Tc 0  Tw (board_cpu.ucf) Tj
74.16 0  TD /F1 12  Tf
0.1407  Tc -0.2367  Tw ( \(Xilinx and Avnet board specific\)) Tj
-244.32 -14.16  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0.04  Tc (sim) Tj
113.52 0  TD /F1 12  Tf
0.0288  Tc -0.1488  Tw (source code for the simulator) Tj
-170.16 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
-0.06  Tc (vhdl) Tj
113.52 0  TD /F1 12  Tf
0.0424  Tc -0.1624  Tw (vhdl code for the CPU) Tj
-226.8 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (2.3) Tj
56.64 0  TD 0.0196  Tc 0.0524  Tw (Makefiles and Building the Base System) Tj
-50.88 -18.72  TD /F1 12  Tf
0.075  Tc -0.235  Tw (There are 3 different targets for the top level Makefile.) Tj
50.88 -40.08  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
-0.04  Tc (loader) Tj
113.52 0  TD /F1 12  Tf
0.0923  Tc -0.2423  Tw (a small program that loads a subsequent memory ) Tj
0 -13.92  TD 0.0825  Tc -0.2196  Tw (image from the serial port of the FPGA.) Tj
-170.16 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0.03  Tc (test) Tj
113.52 0  TD /F1 12  Tf
0.066  Tc -0.186  Tw (a small monitor program for testing various I/O ) Tj
0 -14.16  TD 0.08  Tc -0.24  Tw (functions of the FPGA) Tj
-170.16 -13.92  TD /F0 12  Tf
-2.76  Tc 0  Tw (\225) Tj
56.64 0  TD 0  Tc (rtos) Tj
113.52 0  TD /F1 12  Tf
0.0884  Tc -0.2804  Tw (the same monitor as for ) Tj
116.16 0  TD /F0 12  Tf
0.03  Tc 0  Tw (test) Tj
18 0  TD /F1 12  Tf
0.0706  Tc -0.1906  Tw (, but using a preemp-) Tj
-134.16 -13.92  TD 0.0852  Tc -0.1652  Tw (tive multitasking operating system) Tj
-221.04 -14.16  TD 0.0927  Tc -0.2927  Tw (The anticipated development process is as follows.) Tj
50.88 -19.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD 0.08  Tc -0.24  Tw (Copy the CPU package on your machine) Tj
ET
endstream
endobj
17 0 obj
5059
endobj
15 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 16 0 R
>>
endobj
19 0 obj
<<
/Length 20 0 R
>>
stream
BT
128.64 712.08  TD
0 0 0 rg 
/F1 12  Tf
-2.64  Tc 0  Tw (\225) Tj
56.64 0  TD 0.1292  Tc -0.3692  Tw (Either install ) Tj
63.84 0  TD /F0 12  Tf
0  Tc 0  Tw (gmake) Tj
34.08 0  TD /F1 12  Tf
0.0545  Tc -0.5825  Tw ( \(recommended\) or else perform the actions in the top ) Tj
-97.92 -14.16  TD 0.24  Tc -0.24  Tw (level ) Tj
26.4 0  TD /F0 12  Tf
-0.03  Tc 0  Tw (Makefile) Tj
45.36 0  TD /F1 12  Tf
0.135  Tc -0.215  Tw ( manually later on.) Tj
-128.4 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD 0.1084  Tc -0.1484  Tw (Build the utilities if required \(see ) Tj
162 0  TD 0.072  Tc -0.168  Tw (2.1 regarding when this is needed\).) Tj
-218.64 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD 0.102  Tc -0.27  Tw (If you have a Virtex E evaluation kit from Avnet \() Tj
241.2 0  TD /F0 12  Tf
-0.0086  Tc 0  Tw (ADS-XLX-VE-EVL) Tj
102.72 0  TD /F1 12  Tf
-0.24  Tc 0.24  Tw (, ) Tj
-343.92 -14.16  TD 0.0185  Tc -0.3385  Tw ($150\), then the ) Tj
74.4 0  TD /F0 12  Tf
-0.12  Tc 0  Tw (vhdl) Tj
22.56 0  TD /F1 12  Tf
0.0587  Tc -0.495  Tw ( files are ok already. Otherwise, you need to adapt the ) Tj
-96.96 -13.92  TD 0.18  Tc -0.24  Tw (top level vhdl file ) Tj
88.08 0  TD /F0 12  Tf
-0.02  Tc 0  Tw (vhdl/board_cpu.vhd) Tj
103.68 0  TD /F1 12  Tf
0.1477  Tc -0.2437  Tw ( and the UCF file ) Tj
86.16 0  TD /F0 12  Tf
0  Tc 0  Tw (vhdl/) Tj
-277.92 -13.92  TD -0.0277  Tc (board_cpu.ucf) Tj
74.4 0  TD /F1 12  Tf
0.0588  Tc -0.517  Tw ( \(for the Xilinx design flow\) to your actual hardware. Note ) Tj
-74.4 -14.16  TD 0.0857  Tc -0.1657  Tw (that the utility ) Tj
70.32 0  TD /F0 12  Tf
0.0514  Tc 0  Tw (memory/makemem) Tj
99.36 0  TD /F1 12  Tf
0.128  Tc -0.308  Tw ( will overwrite the UCF file, so when ) Tj
-169.68 -13.92  TD 0.112  Tc -0.24  Tw (you use a different UCF file, then you should use a different name for it, ) Tj
0 -13.92  TD 0.0579  Tc -0.2179  Tw (so that it will not be overwritten,) Tj
-56.64 -14.16  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD -0.12  Tc 0.12  Tw (Do ) Tj
17.52 0  TD /F0 12  Tf
-0.024  Tc -0.096  Tw (make loader) Tj
63.36 0  TD /F1 12  Tf
0.1029  Tc -0.4329  Tw ( in the top level directory. This compiles ) Tj
195.6 0  TD /F0 12  Tf
0.015  Tc 0  Tw (loader.c) Tj
40.8 0  TD /F1 12  Tf
0  Tc -0.24  Tw ( \(gener-) Tj
-317.28 -13.92  TD 0.096  Tc -0.096  Tw (ating ) Tj
27.12 0  TD /F0 12  Tf
0  Tc 0  Tw (loader.asm) Tj
56.16 0  TD /F1 12  Tf
0.1309  Tc -0.1309  Tw (\), assembles ) Tj
61.68 0  TD /F0 12  Tf
0  Tc 0  Tw (loader.asm) Tj
56.4 0  TD /F1 12  Tf
0.1636  Tc -0.3076  Tw ( \(generating a binary file ) Tj
-201.36 -13.92  TD /F0 12  Tf
-0.012  Tc 0  Tw (loader.bin) Tj
52.32 0  TD /F1 12  Tf
0.192  Tc -0.288  Tw (, an intel hex file ) Tj
84 0  TD /F0 12  Tf
-0.036  Tc 0  Tw (loader.ihx) Tj
51.6 0  TD /F1 12  Tf
0.2  Tc -0.296  Tw ( and a list file ) Tj
68.4 0  TD /F0 12  Tf
0.012  Tc 0  Tw (loader.lst) Tj
47.52 0  TD /F1 12  Tf
0  Tc (\), and cre-) Tj
-303.84 -14.16  TD (ates ) Tj
21.84 0  TD /F0 12  Tf
0.018  Tc (vhdl/mem_content.vhd) Tj
117.6 0  TD /F1 12  Tf
0.144  Tc -0.204  Tw ( using the utility ) Tj
81.12 0  TD /F0 12  Tf
0.0686  Tc 0  Tw (makemem) Tj
53.28 0  TD /F1 12  Tf
0  Tc (\).) Tj
-330.48 -13.92  TD -2.64  Tc (\225) Tj
56.64 0  TD 0.0369  Tc -0.1269  Tw (Compile the VHDL code and download to the FPGA.) Tj
-107.52 -34.08  TD 0.0726  Tc 0.1274  Tw (At this point, you should have a working system on a chip. When you connect to the serial port) Tj
-5.76 -13.92  TD 0.0273  Tc -0.2407  Tw (of the FPGA \(115,200 kBaud, 8 data bits, no parity, no flow control\) and reset the FPGA, the sys-) Tj
0 -13.92  TD 0.0709  Tc -0.2209  Tw (tem should print the following on the serial output:) Tj
28.32 -20.16  TD /F0 12  Tf
-0.048  Tc 0.168  Tw (LOAD >) Tj
-22.56 -19.92  TD /F1 12  Tf
0.0911  Tc 0.6571  Tw (This means the system is ready to load the desired application as a series of intel hex records.) Tj
-5.76 -13.92  TD 0.0527  Tc -0.4577  Tw (Every intel hex record loaded will be acknowledge by a dot printed on the serial output. Corrupted) Tj
0 -14.16  TD 0.0447  Tc 0.0153  Tw (characters or records are indicated by the message ) Tj
245.28 0  TD /F0 12  Tf
-0.03  Tc 0.27  Tw (ERROR: not hex) Tj
88.32 0  TD /F1 12  Tf
0.0923  Tc -0.0123  Tw ( \(invalid character received,) Tj
-333.6 -13.92  TD -0.036  Tc -0.012  Tw (check baud rate etc.\) or ) Tj
115.2 0  TD /F0 12  Tf
-0.0092  Tc 0.1292  Tw (CHECKSUM ERROR) Tj
116.88 0  TD /F1 12  Tf
0.0646  Tc -0.1246  Tw ( \(rather unlikely to happpen\).) Tj
-232.08 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (2.4) Tj
56.64 0  TD 0.0214  Tc -0.1414  Tw (Building Applications) Tj
-50.88 -18.72  TD /F1 12  Tf
0.084  Tc 0.0189  Tw (After the base system containing the loader is working, you can develop your own applications.) Tj
-5.76 -13.92  TD 0.0454  Tc -0.114  Tw (Two applications are provided with the CPU: ) Tj
220.8 0  TD /F0 12  Tf
0.03  Tc 0  Tw (test) Tj
18 0  TD /F1 12  Tf
0.16  Tc -0.28  Tw ( and ) Tj
23.28 0  TD /F0 12  Tf
0  Tc 0  Tw (rtos) Tj
20.16 0  TD /F1 12  Tf
(.) Tj
-276.48 -20.16  TD 0.1029  Tc -0.2229  Tw (To build the application ) Tj
117.84 0  TD /F0 12  Tf
0.03  Tc 0  Tw (test) Tj
18 0  TD /F1 12  Tf
0  Tc -0.12  Tw (, just do) Tj
-113.28 -19.92  TD /F0 12  Tf
0.015  Tc 0.105  Tw (make test) Tj
-22.56 -19.92  TD /F1 12  Tf
0.048  Tc -0.168  Tw (which creates \(among others\) ) Tj
144.48 0  TD /F0 12  Tf
-0.03  Tc 0  Tw (test.ihx) Tj
36.96 0  TD /F1 12  Tf
0.0761  Tc -0.1634  Tw (, which can be loaded into the FPGA via the loader. ) Tj
251.76 0  TD /F0 12  Tf
0.03  Tc 0  Tw (test) Tj
18 0  TD /F1 12  Tf
0.12  Tc -0.12  Tw ( is) Tj
-456.96 -14.16  TD 0.1184  Tc 0.9958  Tw (a small monitor that has functions for displaying and modifying memory, setting LEDs on the) Tj
0 -13.92  TD 0.0243  Tc -0.1243  Tw (board, reading the DIP switches on the board, and reading the temperature sensor.) Tj
5.76 -19.92  TD 0.1829  Tc -0.3269  Tw (I was initially using the ) Tj
115.2 0  TD /F0 12  Tf
-0.0092  Tc 0  Tw (HyperTerminal) Tj
80.64 0  TD /F1 12  Tf
0.0764  Tc -0.2564  Tw ( program shipped with Windows XP, but copying \(intel) Tj
-201.6 -14.16  TD 0.0431  Tc -0.269  Tw (hex\) files to the FPGA was very slow \(even though the baud rate was 115,200\). Therefore I wrote) Tj
0 -13.92  TD 0.0904  Tc 0.081  Tw (the tty.exe program supplied in the package which dumps files much faster on COM1. ) Tj
421.44 0  TD /F0 12  Tf
0  Tc 0  Tw (tty) Tj
13.92 0  TD /F1 12  Tf
-0.096  Tc 0.336  Tw ( works) Tj
-435.36 -13.92  TD 0.091  Tc -0.091  Tw (from the DOS command line \(program ) Tj
190.56 0  TD /F0 12  Tf
0.08  Tc 0  Tw (cmd) Tj
22.08 0  TD /F1 12  Tf
0.1346  Tc -0.1346  Tw ( in Windows XP\) pretty much like HyperTerminal in) Tj
-212.64 -14.16  TD 0.0313  Tc -0.1753  Tw (a window. tty is started as:) Tj
28.32 -19.92  TD /F0 12  Tf
0  Tc 0.12  Tw (tty [filename]) Tj
-22.56 -19.92  TD /F1 12  Tf
0.1333  Tc 0.9707  Tw (If no filename is provided, then) Tj
0  Tc 0  Tw ( ) Tj
161.52 0  TD /F0 12  Tf
-0.015  Tc (rtos.ihx) Tj
38.88 0  TD /F1 12  Tf
0.1516  Tc 0.8684  Tw ( is assumed by default.) Tj
0  Tc 0  Tw ( ) Tj
118.56 0  TD /F0 12  Tf
0.08  Tc (tty) Tj
14.16 0  TD /F1 12  Tf
0.06  Tc 0.98  Tw ( prints characters received) Tj
-338.88 -14.16  TD 0.12  Tc -0.12  Tw (from ) Tj
26.16 0  TD /F0 12  Tf
0.024  Tc 0  Tw (COM1:) Tj
39.36 0  TD /F1 12  Tf
0  Tc -0.16  Tw ( on the ) Tj
35.04 0  TD /F0 12  Tf
0.08  Tc 0  Tw (cmd) Tj
21.84 0  TD /F1 12  Tf
0.1662  Tc -0.4062  Tw ( window in which ) Tj
88.56 0  TD /F0 12  Tf
0  Tc 0  Tw (tty) Tj
13.92 0  TD /F1 12  Tf
0.0229  Tc -0.2895  Tw ( was started and sends characters typed on the key-) Tj
ET
endstream
endobj
20 0 obj
7626
endobj
18 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 19 0 R
>>
endobj
22 0 obj
<<
/Length 23 0 R
>>
stream
BT
128.64 712.08  TD
0 0 0 rg 
/F1 12  Tf
-2.64  Tc 0  Tw (\225) Tj
56.64 0  TD 0.1292  Tc -0.3692  Tw (Either install ) Tj
63.84 0  TD /F0 12  Tf
0  Tc 0  Tw (gmake) Tj
34.08 0  TD /F1 12  Tf
0.0545  Tc -0.5825  Tw ( \(recommended\) or else perform the actions in the top ) Tj
-97.92 -14.16  TD 0.24  Tc -0.24  Tw (level ) Tj
26.4 0  TD /F0 12  Tf
-0.03  Tc 0  Tw (Makefile) Tj
45.36 0  TD /F1 12  Tf
0.135  Tc -0.215  Tw ( manually later on.) Tj
-128.4 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD 0.1084  Tc -0.1484  Tw (Build the utilities if required \(see ) Tj
162 0  TD 0.072  Tc -0.168  Tw (2.1 regarding when this is needed\).) Tj
-218.64 -13.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD 0.102  Tc -0.27  Tw (If you have a Virtex E evaluation kit from Avnet \() Tj
241.2 0  TD /F0 12  Tf
-0.0086  Tc 0  Tw (ADS-XLX-VE-EVL) Tj
102.72 0  TD /F1 12  Tf
-0.24  Tc 0.24  Tw (, ) Tj
-343.92 -14.16  TD 0.0185  Tc -0.3385  Tw ($150\), then the ) Tj
74.4 0  TD /F0 12  Tf
-0.12  Tc 0  Tw (vhdl) Tj
22.56 0  TD /F1 12  Tf
0.0587  Tc -0.495  Tw ( files are ok already. Otherwise, you need to adapt the ) Tj
-96.96 -13.92  TD 0.18  Tc -0.24  Tw (top level vhdl file ) Tj
88.08 0  TD /F0 12  Tf
-0.02  Tc 0  Tw (vhdl/board_cpu.vhd) Tj
103.68 0  TD /F1 12  Tf
0.1477  Tc -0.2437  Tw ( and the UCF file ) Tj
86.16 0  TD /F0 12  Tf
0  Tc 0  Tw (vhdl/) Tj
-277.92 -13.92  TD -0.0277  Tc (board_cpu.ucf) Tj
74.4 0  TD /F1 12  Tf
0.0588  Tc -0.517  Tw ( \(for the Xilinx design flow\) to your actual hardware. Note ) Tj
-74.4 -14.16  TD 0.0857  Tc -0.1657  Tw (that the utility ) Tj
70.32 0  TD /F0 12  Tf
0.0514  Tc 0  Tw (memory/makemem) Tj
99.36 0  TD /F1 12  Tf
0.128  Tc -0.308  Tw ( will overwrite the UCF file, so when ) Tj
-169.68 -13.92  TD 0.112  Tc -0.24  Tw (you use a different UCF file, then you should use a different name for it, ) Tj
0 -13.92  TD 0.0579  Tc -0.2179  Tw (so that it will not be overwritten,) Tj
-56.64 -14.16  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD -0.12  Tc 0.12  Tw (Do ) Tj
17.52 0  TD /F0 12  Tf
-0.024  Tc -0.096  Tw (make loader) Tj
63.36 0  TD /F1 12  Tf
0.1029  Tc -0.4329  Tw ( in the top level directory. This compiles ) Tj
195.6 0  TD /F0 12  Tf
0.015  Tc 0  Tw (loader.c) Tj
40.8 0  TD /F1 12  Tf
0  Tc -0.24  Tw ( \(gener-) Tj
-317.28 -13.92  TD 0.096  Tc -0.096  Tw (ating ) Tj
27.12 0  TD /F0 12  Tf
0  Tc 0  Tw (loader.asm) Tj
56.16 0  TD /F1 12  Tf
0.1309  Tc -0.1309  Tw (\), assembles ) Tj
61.68 0  TD /F0 12  Tf
0  Tc 0  Tw (loader.asm) Tj
56.4 0  TD /F1 12  Tf
0.1636  Tc -0.3076  Tw ( \(generating a binary file ) Tj
-201.36 -13.92  TD /F0 12  Tf
-0.012  Tc 0  Tw (loader.bin) Tj
52.32 0  TD /F1 12  Tf
0.192  Tc -0.288  Tw (, an intel hex file ) Tj
84 0  TD /F0 12  Tf
-0.036  Tc 0  Tw (loader.ihx) Tj
51.6 0  TD /F1 12  Tf
0.2  Tc -0.296  Tw ( and a list file ) Tj
68.4 0  TD /F0 12  Tf
0.012  Tc 0  Tw (loader.lst) Tj
47.52 0  TD /F1 12  Tf
0  Tc (\), and cre-) Tj
-303.84 -14.16  TD (ates ) Tj
21.84 0  TD /F0 12  Tf
0.018  Tc (vhdl/mem_content.vhd) Tj
117.6 0  TD /F1 12  Tf
0.144  Tc -0.204  Tw ( using the utility ) Tj
81.12 0  TD /F0 12  Tf
0.0686  Tc 0  Tw (makemem) Tj
53.28 0  TD /F1 12  Tf
0  Tc (\).) Tj
-330.48 -13.92  TD -2.64  Tc (\225) Tj
56.64 0  TD 0.0369  Tc -0.1269  Tw (Compile the VHDL code and download to the FPGA.) Tj
-107.52 -34.08  TD 0.0726  Tc 0.1274  Tw (At this point, you should have a working system on a chip. When you connect to the serial port) Tj
-5.76 -13.92  TD 0.0273  Tc -0.2407  Tw (of the FPGA \(115,200 kBaud, 8 data bits, no parity, no flow control\) and reset the FPGA, the sys-) Tj
0 -13.92  TD 0.0709  Tc -0.2209  Tw (tem should print the following on the serial output:) Tj
28.32 -20.16  TD /F0 12  Tf
-0.048  Tc 0.168  Tw (LOAD >) Tj
-22.56 -19.92  TD /F1 12  Tf
0.0911  Tc 0.6571  Tw (This means the system is ready to load the desired application as a series of intel hex records.) Tj
-5.76 -13.92  TD 0.0527  Tc -0.4577  Tw (Every intel hex record loaded will be acknowledge by a dot printed on the serial output. Corrupted) Tj
0 -14.16  TD 0.0447  Tc 0.0153  Tw (characters or records are indicated by the message ) Tj
245.28 0  TD /F0 12  Tf
-0.03  Tc 0.27  Tw (ERROR: not hex) Tj
88.32 0  TD /F1 12  Tf
0.0923  Tc -0.0123  Tw ( \(invalid character received,) Tj
-333.6 -13.92  TD -0.036  Tc -0.012  Tw (check baud rate etc.\) or ) Tj
115.2 0  TD /F0 12  Tf
-0.0092  Tc 0.1292  Tw (CHECKSUM ERROR) Tj
116.88 0  TD /F1 12  Tf
0.0646  Tc -0.1246  Tw ( \(rather unlikely to happpen\).) Tj
-232.08 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (2.4) Tj
56.64 0  TD 0.0214  Tc -0.1414  Tw (Building Applications) Tj
-50.88 -18.72  TD /F1 12  Tf
0.084  Tc 0.0189  Tw (After the base system containing the loader is working, you can develop your own applications.) Tj
-5.76 -13.92  TD 0.0454  Tc -0.114  Tw (Two applications are provided with the CPU: ) Tj
220.8 0  TD /F0 12  Tf
0.03  Tc 0  Tw (test) Tj
18 0  TD /F1 12  Tf
0.16  Tc -0.28  Tw ( and ) Tj
23.28 0  TD /F0 12  Tf
0  Tc 0  Tw (rtos) Tj
20.16 0  TD /F1 12  Tf
(.) Tj
-276.48 -20.16  TD 0.1029  Tc -0.2229  Tw (To build the application ) Tj
117.84 0  TD /F0 12  Tf
0.03  Tc 0  Tw (test) Tj
18 0  TD /F1 12  Tf
0  Tc -0.12  Tw (, just do) Tj
-113.28 -19.92  TD /F0 12  Tf
0.015  Tc 0.105  Tw (make test) Tj
-22.56 -19.92  TD /F1 12  Tf
0.048  Tc -0.168  Tw (which creates \(among others\) ) Tj
144.48 0  TD /F0 12  Tf
-0.03  Tc 0  Tw (test.ihx) Tj
36.96 0  TD /F1 12  Tf
0.0761  Tc -0.1634  Tw (, which can be loaded into the FPGA via the loader. ) Tj
251.76 0  TD /F0 12  Tf
0.03  Tc 0  Tw (test) Tj
18 0  TD /F1 12  Tf
0.12  Tc -0.12  Tw ( is) Tj
-456.96 -14.16  TD 0.1184  Tc 0.9958  Tw (a small monitor that has functions for displaying and modifying memory, setting LEDs on the) Tj
0 -13.92  TD 0.0243  Tc -0.1243  Tw (board, reading the DIP switches on the board, and reading the temperature sensor.) Tj
5.76 -19.92  TD 0.1829  Tc -0.3269  Tw (I was initially using the ) Tj
115.2 0  TD /F0 12  Tf
-0.0092  Tc 0  Tw (HyperTerminal) Tj
80.64 0  TD /F1 12  Tf
0.0764  Tc -0.2564  Tw ( program shipped with Windows XP, but copying \(intel) Tj
-201.6 -14.16  TD 0.0431  Tc -0.269  Tw (hex\) files to the FPGA was very slow \(even though the baud rate was 115,200\). Therefore I wrote) Tj
0 -13.92  TD 0.0904  Tc 0.081  Tw (the tty.exe program supplied in the package which dumps files much faster on COM1. ) Tj
421.44 0  TD /F0 12  Tf
0  Tc 0  Tw (tty) Tj
13.92 0  TD /F1 12  Tf
-0.096  Tc 0.336  Tw ( works) Tj
-435.36 -13.92  TD 0.091  Tc -0.091  Tw (from the DOS command line \(program ) Tj
190.56 0  TD /F0 12  Tf
0.08  Tc 0  Tw (cmd) Tj
22.08 0  TD /F1 12  Tf
0.1346  Tc -0.1346  Tw ( in Windows XP\) pretty much like HyperTerminal in) Tj
-212.64 -14.16  TD 0.0313  Tc -0.1753  Tw (a window. tty is started as:) Tj
28.32 -19.92  TD /F0 12  Tf
0  Tc 0.12  Tw (tty [filename]) Tj
-22.56 -19.92  TD /F1 12  Tf
0.1333  Tc 0.9707  Tw (If no filename is provided, then) Tj
0  Tc 0  Tw ( ) Tj
161.52 0  TD /F0 12  Tf
-0.015  Tc (rtos.ihx) Tj
38.88 0  TD /F1 12  Tf
0.1516  Tc 0.8684  Tw ( is assumed by default.) Tj
0  Tc 0  Tw ( ) Tj
118.56 0  TD /F0 12  Tf
0.08  Tc (tty) Tj
14.16 0  TD /F1 12  Tf
0.06  Tc 0.98  Tw ( prints characters received) Tj
-338.88 -14.16  TD 0.12  Tc -0.12  Tw (from ) Tj
26.16 0  TD /F0 12  Tf
0.024  Tc 0  Tw (COM1:) Tj
39.36 0  TD /F1 12  Tf
0  Tc -0.16  Tw ( on the ) Tj
35.04 0  TD /F0 12  Tf
0.08  Tc 0  Tw (cmd) Tj
21.84 0  TD /F1 12  Tf
0.1662  Tc -0.4062  Tw ( window in which ) Tj
88.56 0  TD /F0 12  Tf
0  Tc 0  Tw (tty) Tj
13.92 0  TD /F1 12  Tf
0.0229  Tc -0.2895  Tw ( was started and sends characters typed on the key-) Tj
ET
endstream
endobj
20 0 obj
7626
endobj
18 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 19 0 R
>>
endobj
22 0 obj
<<
/Length 23 0 R
>>
stream
BT
72 712.08  TD
0 0 0 rg 
/F1 12  Tf
-0.0686  Tc -0.0514  Tw (board to ) Tj
42.48 0  TD /F0 12  Tf
0.024  Tc 0  Tw (COM1:) Tj
39.36 0  TD /F1 12  Tf
0.048  Tc -0.108  Tw (. The special character ) Tj
110.88 0  TD /F0 12  Tf
-0.06  Tc 0  Tw (^L) Tj
14.88 0  TD /F1 12  Tf
0.08  Tc -0.2  Tw ( causes ) Tj
37.2 0  TD /F0 12  Tf
0  Tc 0  Tw (tty) Tj
13.92 0  TD /F1 12  Tf
0.0554  Tc -0.0954  Tw ( to copy the file  ) Tj
81.12 0  TD /F0 12  Tf
0.0133  Tc 0.1067  Tw (filename \() Tj
50.88 0  TD /F1 12  Tf
-0.12  Tc 0.12  Tw (or ) Tj
12.96 0  TD /F0 12  Tf
-0.015  Tc 0  Tw (rtos.ihx) Tj
39.12 0  TD /F1 12  Tf
0.3  Tc -0.54  Tw ( if no) Tj
-442.8 -14.16  TD 0.24  Tc 0  Tw (filename) Tj
42 0  TD /F0 12  Tf
0  Tc 0.12  Tw ( ) Tj
2.88 0  TD /F1 12  Tf
0.0891  Tc -0.1791  Tw (is provided as a command line argument\) to ) Tj
213.84 0  TD /F0 12  Tf
0.024  Tc 0  Tw (COM1:) Tj
39.36 0  TD /F1 12  Tf
0  Tc (.) Tj
-298.08 -36  TD /F0 18  Tf
0.12  Tc (3) Tj
56.64 0  TD -0.0189  Tc 0.0789  Tw (Software Description) Tj
-56.64 -31.2  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (3.1) Tj
56.64 0  TD 0.0512  Tc 0.0688  Tw (C Compiler) Tj
-50.88 -18.72  TD /F0 12  Tf
-0.0133  Tc 0  Tw (Synopsis:) Tj
79.2 0  TD 0.0207  Tc -0.0507  Tw (cc80 [ -l ] memtop infile [ outfile ]) Tj
-79.2 -19.92  TD 0.0267  Tc 0.0933  Tw (Example 1:) Tj
79.2 0  TD 0  Tc 0.06  Tw (cc80 -l 0x2000 loader.c loader.asm) Tj
-79.2 -20.16  TD 0.0267  Tc 0.0933  Tw (Example 2:) Tj
79.2 0  TD 0.005  Tc 0.035  Tw (cc80 0x2000 rtos.c rtos.asm) Tj
-79.2 -19.92  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0.1143  Tc 1.3857  Tw (Compile the C source file) Tj
0  Tc 0  Tw ( ) Tj
134.16 0  TD /F0 12  Tf
-0.04  Tc (infile) Tj
26.16 0  TD /F1 12  Tf
0.1152  Tc 1.3728  Tw ( and create the assembler file) Tj
0  Tc 0  Tw ( ) Tj
151.92 0  TD /F0 12  Tf
-0.0171  Tc (outfile) Tj
32.64 0  TD /F1 12  Tf
-0.04  Tc 1.6  Tw (. The -l) Tj
-344.88 -13.92  TD 0.0514  Tc -0.0514  Tw (option creates a slightly different startup code intended for a loader, which cop-) Tj
0 -14.16  TD 0.0621  Tc 2.0819  Tw (ies itself to the top of the memory. memtop is the top of the memory \(for) Tj
0 -13.92  TD 0.0662  Tc 0.783  Tw (instance, 0x2000 = 8k for FPGA internal memory, or 0xA000 = 40k when an) Tj
T* 0.072  Tc -0.072  Tw (external SRAM is used\).) Tj
-79.2 -20.16  TD /F0 12  Tf
0.03  Tc 0  Tw (Limitations:) Tj
79.2 0  TD /F1 12  Tf
-0.045  Tc -0.035  Tw (Not too well tested) Tj
0 -19.92  TD -0.0096  Tc -0.0864  Tw (No support for compound \(i.e. ) Tj
149.04 0  TD /F0 12  Tf
0.02  Tc 0  Tw (struct) Tj
30 0  TD /F1 12  Tf
0.0533  Tc -0.0533  Tw (\) function arguments) Tj
-179.04 -19.92  TD -0.12  Tc 0.12  Tw (No ) Tj
17.76 0  TD /F0 12  Tf
-0.06  Tc 0  Tw (long) Tj
22.08 0  TD /F1 12  Tf
-0.03  Tc 0.03  Tw ( data type) Tj
-39.84 -20.16  TD 0.0835  Tc -0.2168  Tw (Name should be cc16 \(a left-over from the Z80 compiler\)) Tj
-84.96 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (3.2) Tj
56.64 0  TD 0.0576  Tc (Assembler) Tj
-50.88 -18.72  TD /F0 12  Tf
-0.0133  Tc (Synopsis:) Tj
79.2 0  TD -0.0115  Tc 0.0515  Tw (assembler infile [ binfile [ listfile[ symfile [ ihxfile ] ] ] ]) Tj
-79.2 -19.92  TD 0.03  Tc 0  Tw (Example:) Tj
79.2 0  TD 0.0144  Tc -0.0144  Tw (assembler rtos.asm rtos.bin) Tj
-79.2 -19.92  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0.1366  Tc 0.8418  Tw (Assemble and link the input assembler file and create \(1\) a binary output file) Tj
0 -14.16  TD 0.0978  Tc 0.5879  Tw (\(used by the simulator and by the ) Tj
169.44 0  TD /F0 12  Tf
0.0343  Tc 0  Tw (makemem) Tj
53.28 0  TD /F1 12  Tf
0.1239  Tc 0.699  Tw ( utility\), \(2\) a list file \(useful for) Tj
-222.72 -13.92  TD 0.1088  Tc 1.6112  Tw (debugging\), \(3\) a symbol file \(used by the simulator to display source level) Tj
0 -13.92  TD 0.1389  Tc -0.2932  Tw (symbols in a nice way\), and \(4\) an intel hex file \(used by the loader\).) Tj
-79.2 -20.16  TD /F0 12  Tf
0  Tc 0  Tw (Limitations) Tj
59.28 0  TD /F1 12  Tf
(:) Tj
19.92 0  TD 0.1565  Tc -0.2765  Tw (Can not link several files.) Tj
-84.96 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (3.3) Tj
56.64 0  TD 0.0624  Tc (Simulator) Tj
-50.88 -18.72  TD /F0 12  Tf
-0.0133  Tc (Synopsis:) Tj
79.2 0  TD -0.0055  Tc 0.0055  Tw (simulate binfile symfile) Tj
-79.2 -19.92  TD 0.03  Tc 0  Tw (Example:) Tj
79.2 0  TD 0.015  Tc -0.135  Tw (simulate test.bin test.sym) Tj
-79.2 -19.92  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0.15  Tc -0.15  Tw (Simulate ) Tj
45.84 0  TD /F0 12  Tf
-0.0343  Tc 0  Tw (binfile) Tj
32.64 0  TD /F1 12  Tf
0.0884  Tc -0.1684  Tw ( at instruction level.) Tj
-157.68 -20.16  TD /F0 12  Tf
0  Tc 0  Tw (Limitations) Tj
59.28 0  TD /F1 12  Tf
(:) Tj
19.92 0  TD 0.0768  Tc -0.3168  Tw (Can not simulate interrupts.) Tj
-79.2 -19.92  TD /F0 12  Tf
0.0857  Tc 0  Tw (Comment) Tj
50.64 0  TD /F1 12  Tf
0  Tc (:) Tj
28.56 0  TD 0.1075  Tc -0.1293  Tw (The simulator is useful for debugging the compiler and assembler. If something) Tj
0 -13.92  TD 0.0517  Tc 0.7323  Tw (does not work, check if it works in the simulator. If it works in the simulator,) Tj
0 -14.16  TD 0.0494  Tc -0.3044  Tw (then the error is in the hardware \(vhdl\). If it does not work in the simulator, then) Tj
0 -13.92  TD 0.1  Tc -0.292  Tw (the error is in the compiler.) Tj
ET
endstream
endobj
23 0 obj
5301
endobj
21 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 22 0 R
>>
endobj
25 0 obj
<<
/Length 26 0 R
>>
stream
BT
72 712.08  TD
0 0 0 rg 
/F1 12  Tf
-0.0686  Tc -0.0514  Tw (board to ) Tj
42.48 0  TD /F0 12  Tf
0.024  Tc 0  Tw (COM1:) Tj
39.36 0  TD /F1 12  Tf
0.048  Tc -0.108  Tw (. The special character ) Tj
110.88 0  TD /F0 12  Tf
-0.06  Tc 0  Tw (^L) Tj
14.88 0  TD /F1 12  Tf
0.08  Tc -0.2  Tw ( causes ) Tj
37.2 0  TD /F0 12  Tf
0  Tc 0  Tw (tty) Tj
13.92 0  TD /F1 12  Tf
0.0554  Tc -0.0954  Tw ( to copy the file  ) Tj
81.12 0  TD /F0 12  Tf
0.0133  Tc 0.1067  Tw (filename \() Tj
50.88 0  TD /F1 12  Tf
-0.12  Tc 0.12  Tw (or ) Tj
12.96 0  TD /F0 12  Tf
-0.015  Tc 0  Tw (rtos.ihx) Tj
39.12 0  TD /F1 12  Tf
0.3  Tc -0.54  Tw ( if no) Tj
-442.8 -14.16  TD 0.24  Tc 0  Tw (filename) Tj
42 0  TD /F0 12  Tf
0  Tc 0.12  Tw ( ) Tj
2.88 0  TD /F1 12  Tf
0.0891  Tc -0.1791  Tw (is provided as a command line argument\) to ) Tj
213.84 0  TD /F0 12  Tf
0.024  Tc 0  Tw (COM1:) Tj
39.36 0  TD /F1 12  Tf
0  Tc (.) Tj
-298.08 -36  TD /F0 18  Tf
0.12  Tc (3) Tj
56.64 0  TD -0.0189  Tc 0.0789  Tw (Software Description) Tj
-56.64 -31.2  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (3.1) Tj
56.64 0  TD 0.0512  Tc 0.0688  Tw (C Compiler) Tj
-50.88 -18.72  TD /F0 12  Tf
-0.0133  Tc 0  Tw (Synopsis:) Tj
79.2 0  TD 0.0207  Tc -0.0507  Tw (cc80 [ -l ] memtop infile [ outfile ]) Tj
-79.2 -19.92  TD 0.0267  Tc 0.0933  Tw (Example 1:) Tj
79.2 0  TD 0  Tc 0.06  Tw (cc80 -l 0x2000 loader.c loader.asm) Tj
-79.2 -20.16  TD 0.0267  Tc 0.0933  Tw (Example 2:) Tj
79.2 0  TD 0.005  Tc 0.035  Tw (cc80 0x2000 rtos.c rtos.asm) Tj
-79.2 -19.92  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0.1143  Tc 1.3857  Tw (Compile the C source file) Tj
0  Tc 0  Tw ( ) Tj
134.16 0  TD /F0 12  Tf
-0.04  Tc (infile) Tj
26.16 0  TD /F1 12  Tf
0.1152  Tc 1.3728  Tw ( and create the assembler file) Tj
0  Tc 0  Tw ( ) Tj
151.92 0  TD /F0 12  Tf
-0.0171  Tc (outfile) Tj
32.64 0  TD /F1 12  Tf
-0.04  Tc 1.6  Tw (. The -l) Tj
-344.88 -13.92  TD 0.0514  Tc -0.0514  Tw (option creates a slightly different startup code intended for a loader, which cop-) Tj
0 -14.16  TD 0.0621  Tc 2.0819  Tw (ies itself to the top of the memory. memtop is the top of the memory \(for) Tj
0 -13.92  TD 0.0662  Tc 0.783  Tw (instance, 0x2000 = 8k for FPGA internal memory, or 0xA000 = 40k when an) Tj
T* 0.072  Tc -0.072  Tw (external SRAM is used\).) Tj
-79.2 -20.16  TD /F0 12  Tf
0.03  Tc 0  Tw (Limitations:) Tj
79.2 0  TD /F1 12  Tf
-0.045  Tc -0.035  Tw (Not too well tested) Tj
0 -19.92  TD -0.0096  Tc -0.0864  Tw (No support for compound \(i.e. ) Tj
149.04 0  TD /F0 12  Tf
0.02  Tc 0  Tw (struct) Tj
30 0  TD /F1 12  Tf
0.0533  Tc -0.0533  Tw (\) function arguments) Tj
-179.04 -19.92  TD -0.12  Tc 0.12  Tw (No ) Tj
17.76 0  TD /F0 12  Tf
-0.06  Tc 0  Tw (long) Tj
22.08 0  TD /F1 12  Tf
-0.03  Tc 0.03  Tw ( data type) Tj
-39.84 -20.16  TD 0.0835  Tc -0.2168  Tw (Name should be cc16 \(a left-over from the Z80 compiler\)) Tj
-84.96 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (3.2) Tj
56.64 0  TD 0.0576  Tc (Assembler) Tj
-50.88 -18.72  TD /F0 12  Tf
-0.0133  Tc (Synopsis:) Tj
79.2 0  TD -0.0115  Tc 0.0515  Tw (assembler infile [ binfile [ listfile[ symfile [ ihxfile ] ] ] ]) Tj
-79.2 -19.92  TD 0.03  Tc 0  Tw (Example:) Tj
79.2 0  TD 0.0144  Tc -0.0144  Tw (assembler rtos.asm rtos.bin) Tj
-79.2 -19.92  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0.1366  Tc 0.8418  Tw (Assemble and link the input assembler file and create \(1\) a binary output file) Tj
0 -14.16  TD 0.0978  Tc 0.5879  Tw (\(used by the simulator and by the ) Tj
169.44 0  TD /F0 12  Tf
0.0343  Tc 0  Tw (makemem) Tj
53.28 0  TD /F1 12  Tf
0.1239  Tc 0.699  Tw ( utility\), \(2\) a list file \(useful for) Tj
-222.72 -13.92  TD 0.1088  Tc 1.6112  Tw (debugging\), \(3\) a symbol file \(used by the simulator to display source level) Tj
0 -13.92  TD 0.1389  Tc -0.2932  Tw (symbols in a nice way\), and \(4\) an intel hex file \(used by the loader\).) Tj
-79.2 -20.16  TD /F0 12  Tf
0  Tc 0  Tw (Limitations) Tj
59.28 0  TD /F1 12  Tf
(:) Tj
19.92 0  TD 0.1565  Tc -0.2765  Tw (Can not link several files.) Tj
-84.96 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (3.3) Tj
56.64 0  TD 0.0624  Tc (Simulator) Tj
-50.88 -18.72  TD /F0 12  Tf
-0.0133  Tc (Synopsis:) Tj
79.2 0  TD -0.0055  Tc 0.0055  Tw (simulate binfile symfile) Tj
-79.2 -19.92  TD 0.03  Tc 0  Tw (Example:) Tj
79.2 0  TD 0.015  Tc -0.135  Tw (simulate test.bin test.sym) Tj
-79.2 -19.92  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0.15  Tc -0.15  Tw (Simulate ) Tj
45.84 0  TD /F0 12  Tf
-0.0343  Tc 0  Tw (binfile) Tj
32.64 0  TD /F1 12  Tf
0.0884  Tc -0.1684  Tw ( at instruction level.) Tj
-157.68 -20.16  TD /F0 12  Tf
0  Tc 0  Tw (Limitations) Tj
59.28 0  TD /F1 12  Tf
(:) Tj
19.92 0  TD 0.0768  Tc -0.3168  Tw (Can not simulate interrupts.) Tj
-79.2 -19.92  TD /F0 12  Tf
0.0857  Tc 0  Tw (Comment) Tj
50.64 0  TD /F1 12  Tf
0  Tc (:) Tj
28.56 0  TD 0.1075  Tc -0.1293  Tw (The simulator is useful for debugging the compiler and assembler. If something) Tj
0 -13.92  TD 0.0517  Tc 0.7323  Tw (does not work, check if it works in the simulator. If it works in the simulator,) Tj
0 -14.16  TD 0.0494  Tc -0.3044  Tw (then the error is in the hardware \(vhdl\). If it does not work in the simulator, then) Tj
0 -13.92  TD 0.1  Tc -0.292  Tw (the error is in the compiler.) Tj
ET
endstream
endobj
23 0 obj
5301
endobj
21 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 22 0 R
>>
endobj
25 0 obj
<<
/Length 26 0 R
>>
stream
BT
72 710.64  TD
0 0 0 rg 
/F0 13.92  Tf
-0.04  Tc 0  Tw (3.4) Tj
56.64 0  TD 0.0974  Tc (Makemem) Tj
-50.88 -18.72  TD /F0 12  Tf
-0.0133  Tc (Synopsis:) Tj
79.2 0  TD 0.0171  Tc 0.1029  Tw (makemem binfile) Tj
-79.2 -19.92  TD 0.03  Tc 0  Tw (Example:) Tj
79.2 0  TD 0.0212  Tc 0.0988  Tw (makemem loader.bin) Tj
-79.2 -19.92  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0  Tc (Create ) Tj
34.32 0  TD /F0 12  Tf
0.0052  Tc (../vhdl/mem_content.vhd) Tj
126.96 0  TD /F1 12  Tf
0.18  Tc -0.3  Tw ( from ) Tj
29.28 0  TD /F0 12  Tf
-0.0343  Tc 0  Tw (binfile) Tj
32.64 0  TD /F1 12  Tf
0  Tc (.) Tj
-302.4 -20.16  TD /F0 12  Tf
(Limitations) Tj
59.28 0  TD /F1 12  Tf
(:) Tj
19.92 0  TD 0.1239  Tc 0.91  Tw (Output file name should be a command line argument rather than a fixed file) Tj
0 -13.92  TD 0.18  Tc 0  Tw (name) Tj
-84.96 -29.28  TD /F0 13.92  Tf
-0.04  Tc (3.5) Tj
56.64 0  TD 0  Tc (Tty) Tj
-50.88 -18.72  TD /F0 12  Tf
-0.0133  Tc (Synopsis:) Tj
79.2 0  TD -0.024  Tc 0.144  Tw (tty ihxfile) Tj
-79.2 -19.92  TD 0.03  Tc 0  Tw (Example:) Tj
79.2 0  TD -0.0327  Tc 0.1527  Tw (tty rtos.ihx) Tj
-79.2 -20.16  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0.0893  Tc -0.1579  Tw (Terminal program for Windows. Typing ^L downloads ) Tj
268.08 0  TD /F0 12  Tf
-0.0343  Tc 0  Tw (ihxfile) Tj
32.16 0  TD /F1 12  Tf
0  Tc (.) Tj
-379.44 -19.92  TD /F0 12  Tf
(Limitations) Tj
59.28 0  TD /F1 12  Tf
(:) Tj
19.92 0  TD 0.0429  Tc -0.2029  Tw (Baudrate is fixed to 115, 200 Baud) Tj
0 -19.92  TD 0.0267  Tc -0.1139  Tw (Data foirmat fixed to 8 data bits, 1 stop bit, no parity) Tj
-84.96 -29.52  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (3.6) Tj
56.64 0  TD 0.0368  Tc (Bin2array) Tj
-50.88 -18.48  TD /F0 12  Tf
-0.0133  Tc (Synopsis:) Tj
79.2 0  TD -0.015  Tc -0.105  Tw (bin2array binfile) Tj
-79.2 -20.16  TD 0.03  Tc 0  Tw (Example:) Tj
79.2 0  TD 0.0063  Tc -0.1263  Tw (bin2array loader.bin) Tj
-79.2 -19.92  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0.0761  Tc -0.2132  Tw (Writes a C array respresnting binfile to stdout.) Tj
-79.2 -19.92  TD /F0 12  Tf
0.0857  Tc 0  Tw (Comment) Tj
50.64 0  TD /F1 12  Tf
0  Tc (:) Tj
28.56 0  TD 0.0812  Tc 0.2327  Tw (Useful for e.g. providing a loader in an application, so that one application can) Tj
0 -14.16  TD 0.0542  Tc -0.1502  Tw (load another application. See array ) Tj
169.92 0  TD /F0 12  Tf
0.03  Tc 0  Tw (loader[]) Tj
40.56 0  TD /F1 12  Tf
0.08  Tc -0.176  Tw ( in rtos.c for an example.) Tj
-295.44 -36  TD /F0 18  Tf
0.12  Tc 0  Tw (4) Tj
56.64 0  TD -0.0095  Tc 0.0695  Tw (Hardware Description) Tj
-56.64 -31.2  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (4.1) Tj
56.64 0  TD 0.0107  Tc (board_cpu.vhd) Tj
-50.88 -18.72  TD /F1 12  Tf
0.1629  Tc -0.3229  Tw (This is the top level design file.) Tj
0 -19.92  TD 0.06  Tc -0.1708  Tw (Adaptations to other boards that the Avnet board should be made in this file.) Tj
0 -20.16  TD 0.1357  Tc -0.2557  Tw (Essentially instantiates ) Tj
112.56 0  TD /F0 12  Tf
-0.0133  Tc 0  Tw (cpu16.vhd) Tj
53.04 0  TD /F1 12  Tf
0  Tc (.) Tj
-171.36 -29.28  TD /F0 13.92  Tf
-0.04  Tc (4.2) Tj
56.64 0  TD 0.0016  Tc (cpu16.vhd) Tj
-50.88 -18.72  TD /F1 12  Tf
0.0519  Tc -0.1586  Tw (Breaks down the system on a chip into 3 parts:) Tj
50.88 -19.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
-0.0086  Tc (cpu_engine.vhd) Tj
80.4 0  TD /F1 12  Tf
-0.24  Tc 0.24  Tw (. ) Tj
33.12 0  TD 0.1171  Tc -0.5704  Tw (This module is the CPU itself, plus 8kByte onchip ) Tj
0 -13.92  TD 0.12  Tc 0  Tw (RAM.) Tj
-170.16 -14.16  TD -2.64  Tc (\225) Tj
56.64 0  TD /F0 12  Tf
-0.015  Tc (input_output.vhd) Tj
89.76 0  TD /F1 12  Tf
0  Tc ( ) Tj
23.76 0  TD 0.0821  Tc -0.2021  Tw (This module contains the I/O functions of the ) Tj
0 -13.92  TD 0.0324  Tc -0.1224  Tw (Avnet board. You need to rewrite this module ) Tj
T* 0.0726  Tc -0.2326  Tw (\(and possibly the applications\) for other boards.) Tj
-170.16 -14.16  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0  Tc (bin_to_7segment.vhd) Tj
108.96 0  TD /F1 12  Tf
0.0743  Tc -0.1343  Tw (. This module contains a driver that continuously ) Tj
4.56 -13.92  TD 0.0585  Tc -0.3285  Tw (displays the program counter of the CPU. Usefule ) Tj
0 -13.92  TD 0.091  Tc -0.211  Tw (for debugging the system on a chip.) Tj
ET
endstream
endobj
26 0 obj
4302
endobj
24 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 25 0 R
>>
endobj
29 0 obj
<<
/Length 30 0 R
>>
stream
BT
72 710.64  TD
0 0 0 rg 
/F0 13.92  Tf
-0.04  Tc 0  Tw (3.4) Tj
56.64 0  TD 0.0974  Tc (Makemem) Tj
-50.88 -18.72  TD /F0 12  Tf
-0.0133  Tc (Synopsis:) Tj
79.2 0  TD 0.0171  Tc 0.1029  Tw (makemem binfile) Tj
-79.2 -19.92  TD 0.03  Tc 0  Tw (Example:) Tj
79.2 0  TD 0.0212  Tc 0.0988  Tw (makemem loader.bin) Tj
-79.2 -19.92  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0  Tc (Create ) Tj
34.32 0  TD /F0 12  Tf
0.0052  Tc (../vhdl/mem_content.vhd) Tj
126.96 0  TD /F1 12  Tf
0.18  Tc -0.3  Tw ( from ) Tj
29.28 0  TD /F0 12  Tf
-0.0343  Tc 0  Tw (binfile) Tj
32.64 0  TD /F1 12  Tf
0  Tc (.) Tj
-302.4 -20.16  TD /F0 12  Tf
(Limitations) Tj
59.28 0  TD /F1 12  Tf
(:) Tj
19.92 0  TD 0.1239  Tc 0.91  Tw (Output file name should be a command line argument rather than a fixed file) Tj
0 -13.92  TD 0.18  Tc 0  Tw (name) Tj
-84.96 -29.28  TD /F0 13.92  Tf
-0.04  Tc (3.5) Tj
56.64 0  TD 0  Tc (Tty) Tj
-50.88 -18.72  TD /F0 12  Tf
-0.0133  Tc (Synopsis:) Tj
79.2 0  TD -0.024  Tc 0.144  Tw (tty ihxfile) Tj
-79.2 -19.92  TD 0.03  Tc 0  Tw (Example:) Tj
79.2 0  TD -0.0327  Tc 0.1527  Tw (tty rtos.ihx) Tj
-79.2 -20.16  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0.0893  Tc -0.1579  Tw (Terminal program for Windows. Typing ^L downloads ) Tj
268.08 0  TD /F0 12  Tf
-0.0343  Tc 0  Tw (ihxfile) Tj
32.16 0  TD /F1 12  Tf
0  Tc (.) Tj
-379.44 -19.92  TD /F0 12  Tf
(Limitations) Tj
59.28 0  TD /F1 12  Tf
(:) Tj
19.92 0  TD 0.0429  Tc -0.2029  Tw (Baudrate is fixed to 115, 200 Baud) Tj
0 -19.92  TD 0.0267  Tc -0.1139  Tw (Data foirmat fixed to 8 data bits, 1 stop bit, no parity) Tj
-84.96 -29.52  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (3.6) Tj
56.64 0  TD 0.0368  Tc (Bin2array) Tj
-50.88 -18.48  TD /F0 12  Tf
-0.0133  Tc (Synopsis:) Tj
79.2 0  TD -0.015  Tc -0.105  Tw (bin2array binfile) Tj
-79.2 -20.16  TD 0.03  Tc 0  Tw (Example:) Tj
79.2 0  TD 0.0063  Tc -0.1263  Tw (bin2array loader.bin) Tj
-79.2 -19.92  TD 0.0267  Tc 0  Tw (Function:) Tj
79.2 0  TD /F1 12  Tf
0.0761  Tc -0.2132  Tw (Writes a C array respresnting binfile to stdout.) Tj
-79.2 -19.92  TD /F0 12  Tf
0.0857  Tc 0  Tw (Comment) Tj
50.64 0  TD /F1 12  Tf
0  Tc (:) Tj
28.56 0  TD 0.0812  Tc 0.2327  Tw (Useful for e.g. providing a loader in an application, so that one application can) Tj
0 -14.16  TD 0.0542  Tc -0.1502  Tw (load another application. See array ) Tj
169.92 0  TD /F0 12  Tf
0.03  Tc 0  Tw (loader[]) Tj
40.56 0  TD /F1 12  Tf
0.08  Tc -0.176  Tw ( in rtos.c for an example.) Tj
-295.44 -36  TD /F0 18  Tf
0.12  Tc 0  Tw (4) Tj
56.64 0  TD -0.0095  Tc 0.0695  Tw (Hardware Description) Tj
-56.64 -31.2  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (4.1) Tj
56.64 0  TD 0.0107  Tc (board_cpu.vhd) Tj
-50.88 -18.72  TD /F1 12  Tf
0.1629  Tc -0.3229  Tw (This is the top level design file.) Tj
0 -19.92  TD 0.06  Tc -0.1708  Tw (Adaptations to other boards that the Avnet board should be made in this file.) Tj
0 -20.16  TD 0.1357  Tc -0.2557  Tw (Essentially instantiates ) Tj
112.56 0  TD /F0 12  Tf
-0.0133  Tc 0  Tw (cpu16.vhd) Tj
53.04 0  TD /F1 12  Tf
0  Tc (.) Tj
-171.36 -29.28  TD /F0 13.92  Tf
-0.04  Tc (4.2) Tj
56.64 0  TD 0.0016  Tc (cpu16.vhd) Tj
-50.88 -18.72  TD /F1 12  Tf
0.0519  Tc -0.1586  Tw (Breaks down the system on a chip into 3 parts:) Tj
50.88 -19.92  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
-0.0086  Tc (cpu_engine.vhd) Tj
80.4 0  TD /F1 12  Tf
-0.24  Tc 0.24  Tw (. ) Tj
33.12 0  TD 0.1171  Tc -0.5704  Tw (This module is the CPU itself, plus 8kByte onchip ) Tj
0 -13.92  TD 0.12  Tc 0  Tw (RAM.) Tj
-170.16 -14.16  TD -2.64  Tc (\225) Tj
56.64 0  TD /F0 12  Tf
-0.015  Tc (input_output.vhd) Tj
89.76 0  TD /F1 12  Tf
0  Tc ( ) Tj
23.76 0  TD 0.0821  Tc -0.2021  Tw (This module contains the I/O functions of the ) Tj
0 -13.92  TD 0.0324  Tc -0.1224  Tw (Avnet board. You need to rewrite this module ) Tj
T* 0.0726  Tc -0.2326  Tw (\(and possibly the applications\) for other boards.) Tj
-170.16 -14.16  TD -2.64  Tc 0  Tw (\225) Tj
56.64 0  TD /F0 12  Tf
0  Tc (bin_to_7segment.vhd) Tj
108.96 0  TD /F1 12  Tf
0.0743  Tc -0.1343  Tw (. This module contains a driver that continuously ) Tj
4.56 -13.92  TD 0.0585  Tc -0.3285  Tw (displays the program counter of the CPU. Usefule ) Tj
0 -13.92  TD 0.091  Tc -0.211  Tw (for debugging the system on a chip.) Tj
ET
endstream
endobj
26 0 obj
4302
endobj
24 0 obj
<<
/Type /Page
/Parent 5 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 25 0 R
>>
endobj
29 0 obj
<<
/Length 30 0 R
>>
stream
BT
72 710.64  TD
0 0 0 rg 
/F0 13.92  Tf
-0.04  Tc 0  Tw (4.3) Tj
56.64 0  TD 0.0298  Tc (bin_to_7segment.vhd) Tj
-50.88 -18.72  TD /F1 12  Tf
0.098  Tc 1.2353  Tw (This module samples the PC of the CPU at fixed intervals and shows the value on a pair of) Tj
-5.76 -13.92  TD 0.0752  Tc -0.1752  Tw (7segment LEDs. This function is specific to the Avnet board providing the LEDs.) Tj
0 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (4.4) Tj
56.64 0  TD 0  Tc (input_output.vhd) Tj
-50.88 -18.72  TD /F1 12  Tf
0.0658  Tc 1.0142  Tw (This module provids a number of I/O functions that can be accessed by the CPU through the) Tj
-5.76 -13.92  TD 0.1029  Tc -0.3429  Tw (assembler instructions) Tj
84.96 -20.16  TD /F0 12  Tf
0.06  Tc 0.06  Tw (IN ) Tj
56.88 0  TD 0.0267  Tc -0.1467  Tw (\(port\), RU) Tj
113.28 0  TD /F1 12  Tf
0.08  Tc 0  Tw (and) Tj
-170.16 -19.92  TD /F0 12  Tf
-0.04  Tc (OUT) Tj
56.88 0  TD 0.06  Tc -0.18  Tw (R, \(port\)) Tj
-136.08 -19.92  TD /F1 12  Tf
0.0835  Tc -0.2435  Tw (The ports implemented are:) Tj
152.16 -52.08  TD -0.04  Tc 0.04  Tw (Port Function) Tj
238.56 0  TD -0.12  Tc 0  Tw (IN) Tj
36 0  TD 0  Tc (OUT) Tj
-426.48 -24  TD /F0 12  Tf
(IN_RX_DATA) Tj
76.56 0  TD /F1 12  Tf
0.0226  Tc -0.219  Tw (: Data to be transmitted on serial output. In polled operation, ) Tj
-76.56 -13.92  TD 0.0514  Tc -0.5314  Tw (you need to check ) Tj
88.08 0  TD /F0 12  Tf
-0.0133  Tc 0  Tw (IN_STATUS) Tj
66 0  TD /F1 12  Tf
0.0431  Tc -0.4931  Tw ( before sending data. Reading this port resets ) Tj
-154.08 -14.16  TD 0.1309  Tc -0.2269  Tw (bits 4 and 0 in ) Tj
71.04 0  TD /F0 12  Tf
0.0133  Tc 0  Tw (IN_STATUS) Tj
66 0  TD /F1 12  Tf
0  Tc (.) Tj
244.56 28.08  TD (0) Tj
-381.6 -49.92  TD /F0 12  Tf
-0.0133  Tc (IN_STATUS) Tj
66 0  TD /F1 12  Tf
0.0462  Tc -0.1262  Tw (: Status of serial I/O and timer) Tj
-66 -14.16  TD 0.016  Tc -0.196  Tw (Bit 7: not used \(0\)) Tj
0 -13.92  TD 0.0758  Tc -0.2067  Tw (Bit 6: 1 iff timer interrupt enabled and timer interrupt has occured) Tj
T* 0.0876  Tc -0.2248  Tw (Bit 5:1 iff serial Tx interrupt enabled and serial Tx is ready to accept data) Tj
0 -14.16  TD 0.1163  Tc -0.227  Tw (Bit 4:1 iff serial Rx interrupt enabled and serial Rx has received valid data) Tj
0 -13.92  TD 0.015  Tc -0.195  Tw (Bit 3: :not used \(0\)) Tj
T* 0.08  Tc -0.28  Tw (Bit 2:1 iff timer interrupt has occured) Tj
0 -14.16  TD 0.0754  Tc -0.1654  Tw (Bit 1:iff serial Tx is ready to accept data) Tj
0 -13.92  TD 0.1362  Tc -0.2862  Tw (Bit 0:1 iff serial Rx has received valid data) Tj
381.6 112.08  TD 0  Tc 0  Tw (1) Tj
-381.6 -134.16  TD /F0 12  Tf
-0.0109  Tc (IN_TEMPERAT) Tj
87.36 0  TD /F1 12  Tf
0.036  Tc -0.126  Tw (: current value from temperature sensor \(8 bit 2) Tj
-2.64  Tc 0  Tw (\222) Tj
0.09  Tc -0.09  Tw (s comple-) Tj
-87.36 -13.92  TD 0.1054  Tc -0.2254  Tw (ment in degrees Celsius\) \(Avnet board specific\)) Tj
381.6 13.92  TD 0  Tc 0  Tw (2) Tj
-381.6 -36  TD /F0 12  Tf
(IN_DIP_SWITCH) Tj
95.28 0  TD /F1 12  Tf
0.0528  Tc -0.4261  Tw (: current setting of the DIP switch. \(Avnet board specific\)) Tj
286.32 0  TD 0  Tc 0  Tw (3) Tj
-381.6 -21.84  TD /F0 12  Tf
-0.0086  Tc (IN_CLK_CTR_LOW) Tj
111.84 0  TD /F1 12  Tf
0.0457  Tc -0.1657  Tw (: current value of a 16 bit clock counter \(low byte\)) Tj
269.76 0  TD 0  Tc 0  Tw (4) Tj
-381.6 -22.08  TD /F0 12  Tf
(IN_CLK_CTR_HIGH) Tj
115.2 0  TD /F1 12  Tf
0.067  Tc -0.2197  Tw (:  current value of a 16 bit clock counter \(high byte\)) Tj
266.4 0  TD 0  Tc 0  Tw (5) Tj
-381.6 -22.08  TD /F0 12  Tf
-0.0109  Tc (OUT_TX_DATA) Tj
88.56 0  TD /F1 12  Tf
0.07  Tc -0.238  Tw (: Data received on serial input. In polled operation, you ) Tj
-88.56 -13.92  TD 0  Tc 0  Tw (need to check ) Tj
68.88 0  TD /F0 12  Tf
-0.0133  Tc (IN_STATUS) Tj
66 0  TD /F1 12  Tf
0.054  Tc -0.1607  Tw ( before readiing data.  Writing this port resets ) Tj
-134.88 -13.92  TD 0.1309  Tc -0.2269  Tw (bits 5 and 1 in ) Tj
71.04 0  TD /F0 12  Tf
0.0133  Tc 0  Tw (IN_STATUS) Tj
66 0  TD /F1 12  Tf
0  Tc (.) Tj
287.04 27.84  TD (0) Tj
-424.08 -49.92  TD /F0 12  Tf
-0.0343  Tc 0.1543  Tw (not used) Tj
424.08 0  TD /F1 12  Tf
0  Tc 0  Tw (1) Tj
-424.08 -22.08  TD /F0 12  Tf
-0.015  Tc (OUT_LEDS) Tj
63.36 0  TD /F1 12  Tf
0.0261  Tc -0.1461  Tw (: Turns each of the 8 LEDs on or off. 1 turns LED on.\(Avnet ) Tj
-63.36 -13.92  TD 0.1029  Tc -0.3429  Tw (board specific\)) Tj
424.08 13.92  TD 0  Tc 0  Tw (2) Tj
ET
71.76 100.32 0.48 419.52 re f
453.36 99.84 0.48 420.48 re f
495.84 99.84 0.48 420.48 re f
537.12 100.32 0.48 419.52 re f
71.76 520.32 m 
71.76 519.84 l 
537.6 519.84 l 
537.6 520.32 l 
h 
f
72.24 495.6 m 
72.24 495.12 l 
537.12 495.12 l 
537.12 495.6 l 
h 
f
72.24 492.96 m 
72.24 492.48 l 
537.12 492.48 l 
537.12 492.96 l 
h 
f
71.76 444.24 m 
71.76 443.76 l 
537.6 443.76 l 
537.6 444.24 l 
h 
f
71.76 310.32 m 
71.76 309.84 l 
537.6 309.84 l 
537.6 310.32 l 
h 
f
71.76 274.32 m 
71.76 273.84 l 
537.6 273.84 l 
537.6 274.32 l 
h 
f
71.76 252.24 m 
71.76 251.76 l 
537.6 251.76 l 
537.6 252.24 l 
h 
f
71.76 230.16 m 
71.76 229.68 l 
537.6 229.68 l 
537.6 230.16 l 
h 
f
71.76 208.32 m 
71.76 207.84 l 
537.6 207.84 l 
537.6 208.32 l 
h 
f
71.76 158.16 m 
71.76 157.68 l 
537.6 157.68 l 
537.6 158.16 l 
h 
f
71.76 136.32 m 
71.76 135.84 l 
537.6 135.84 l 
537.6 136.32 l 
h 
f
71.76 100.32 m 
71.76 99.84 l 
537.6 99.84 l 
537.6 100.32 l 
h 
f
endstream
endobj
30 0 obj
5365
endobj
27 0 obj
<<
/Type /Page
/Parent 28 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 29 0 R
>>
endobj
32 0 obj
<<
/Length 33 0 R
>>
stream
BT
72 710.64  TD
0 0 0 rg 
/F0 13.92  Tf
-0.04  Tc 0  Tw (4.3) Tj
56.64 0  TD 0.0298  Tc (bin_to_7segment.vhd) Tj
-50.88 -18.72  TD /F1 12  Tf
0.098  Tc 1.2353  Tw (This module samples the PC of the CPU at fixed intervals and shows the value on a pair of) Tj
-5.76 -13.92  TD 0.0752  Tc -0.1752  Tw (7segment LEDs. This function is specific to the Avnet board providing the LEDs.) Tj
0 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (4.4) Tj
56.64 0  TD 0  Tc (input_output.vhd) Tj
-50.88 -18.72  TD /F1 12  Tf
0.0658  Tc 1.0142  Tw (This module provids a number of I/O functions that can be accessed by the CPU through the) Tj
-5.76 -13.92  TD 0.1029  Tc -0.3429  Tw (assembler instructions) Tj
84.96 -20.16  TD /F0 12  Tf
0.06  Tc 0.06  Tw (IN ) Tj
56.88 0  TD 0.0267  Tc -0.1467  Tw (\(port\), RU) Tj
113.28 0  TD /F1 12  Tf
0.08  Tc 0  Tw (and) Tj
-170.16 -19.92  TD /F0 12  Tf
-0.04  Tc (OUT) Tj
56.88 0  TD 0.06  Tc -0.18  Tw (R, \(port\)) Tj
-136.08 -19.92  TD /F1 12  Tf
0.0835  Tc -0.2435  Tw (The ports implemented are:) Tj
152.16 -52.08  TD -0.04  Tc 0.04  Tw (Port Function) Tj
238.56 0  TD -0.12  Tc 0  Tw (IN) Tj
36 0  TD 0  Tc (OUT) Tj
-426.48 -24  TD /F0 12  Tf
(IN_RX_DATA) Tj
76.56 0  TD /F1 12  Tf
0.0226  Tc -0.219  Tw (: Data to be transmitted on serial output. In polled operation, ) Tj
-76.56 -13.92  TD 0.0514  Tc -0.5314  Tw (you need to check ) Tj
88.08 0  TD /F0 12  Tf
-0.0133  Tc 0  Tw (IN_STATUS) Tj
66 0  TD /F1 12  Tf
0.0431  Tc -0.4931  Tw ( before sending data. Reading this port resets ) Tj
-154.08 -14.16  TD 0.1309  Tc -0.2269  Tw (bits 4 and 0 in ) Tj
71.04 0  TD /F0 12  Tf
0.0133  Tc 0  Tw (IN_STATUS) Tj
66 0  TD /F1 12  Tf
0  Tc (.) Tj
244.56 28.08  TD (0) Tj
-381.6 -49.92  TD /F0 12  Tf
-0.0133  Tc (IN_STATUS) Tj
66 0  TD /F1 12  Tf
0.0462  Tc -0.1262  Tw (: Status of serial I/O and timer) Tj
-66 -14.16  TD 0.016  Tc -0.196  Tw (Bit 7: not used \(0\)) Tj
0 -13.92  TD 0.0758  Tc -0.2067  Tw (Bit 6: 1 iff timer interrupt enabled and timer interrupt has occured) Tj
T* 0.0876  Tc -0.2248  Tw (Bit 5:1 iff serial Tx interrupt enabled and serial Tx is ready to accept data) Tj
0 -14.16  TD 0.1163  Tc -0.227  Tw (Bit 4:1 iff serial Rx interrupt enabled and serial Rx has received valid data) Tj
0 -13.92  TD 0.015  Tc -0.195  Tw (Bit 3: :not used \(0\)) Tj
T* 0.08  Tc -0.28  Tw (Bit 2:1 iff timer interrupt has occured) Tj
0 -14.16  TD 0.0754  Tc -0.1654  Tw (Bit 1:iff serial Tx is ready to accept data) Tj
0 -13.92  TD 0.1362  Tc -0.2862  Tw (Bit 0:1 iff serial Rx has received valid data) Tj
381.6 112.08  TD 0  Tc 0  Tw (1) Tj
-381.6 -134.16  TD /F0 12  Tf
-0.0109  Tc (IN_TEMPERAT) Tj
87.36 0  TD /F1 12  Tf
0.036  Tc -0.126  Tw (: current value from temperature sensor \(8 bit 2) Tj
-2.64  Tc 0  Tw (\222) Tj
0.09  Tc -0.09  Tw (s comple-) Tj
-87.36 -13.92  TD 0.1054  Tc -0.2254  Tw (ment in degrees Celsius\) \(Avnet board specific\)) Tj
381.6 13.92  TD 0  Tc 0  Tw (2) Tj
-381.6 -36  TD /F0 12  Tf
(IN_DIP_SWITCH) Tj
95.28 0  TD /F1 12  Tf
0.0528  Tc -0.4261  Tw (: current setting of the DIP switch. \(Avnet board specific\)) Tj
286.32 0  TD 0  Tc 0  Tw (3) Tj
-381.6 -21.84  TD /F0 12  Tf
-0.0086  Tc (IN_CLK_CTR_LOW) Tj
111.84 0  TD /F1 12  Tf
0.0457  Tc -0.1657  Tw (: current value of a 16 bit clock counter \(low byte\)) Tj
269.76 0  TD 0  Tc 0  Tw (4) Tj
-381.6 -22.08  TD /F0 12  Tf
(IN_CLK_CTR_HIGH) Tj
115.2 0  TD /F1 12  Tf
0.067  Tc -0.2197  Tw (:  current value of a 16 bit clock counter \(high byte\)) Tj
266.4 0  TD 0  Tc 0  Tw (5) Tj
-381.6 -22.08  TD /F0 12  Tf
-0.0109  Tc (OUT_TX_DATA) Tj
88.56 0  TD /F1 12  Tf
0.07  Tc -0.238  Tw (: Data received on serial input. In polled operation, you ) Tj
-88.56 -13.92  TD 0  Tc 0  Tw (need to check ) Tj
68.88 0  TD /F0 12  Tf
-0.0133  Tc (IN_STATUS) Tj
66 0  TD /F1 12  Tf
0.054  Tc -0.1607  Tw ( before readiing data.  Writing this port resets ) Tj
-134.88 -13.92  TD 0.1309  Tc -0.2269  Tw (bits 5 and 1 in ) Tj
71.04 0  TD /F0 12  Tf
0.0133  Tc 0  Tw (IN_STATUS) Tj
66 0  TD /F1 12  Tf
0  Tc (.) Tj
287.04 27.84  TD (0) Tj
-424.08 -49.92  TD /F0 12  Tf
-0.0343  Tc 0.1543  Tw (not used) Tj
424.08 0  TD /F1 12  Tf
0  Tc 0  Tw (1) Tj
-424.08 -22.08  TD /F0 12  Tf
-0.015  Tc (OUT_LEDS) Tj
63.36 0  TD /F1 12  Tf
0.0261  Tc -0.1461  Tw (: Turns each of the 8 LEDs on or off. 1 turns LED on.\(Avnet ) Tj
-63.36 -13.92  TD 0.1029  Tc -0.3429  Tw (board specific\)) Tj
424.08 13.92  TD 0  Tc 0  Tw (2) Tj
ET
71.76 100.32 0.48 419.52 re f
453.36 99.84 0.48 420.48 re f
495.84 99.84 0.48 420.48 re f
537.12 100.32 0.48 419.52 re f
71.76 520.32 m 
71.76 519.84 l 
537.6 519.84 l 
537.6 520.32 l 
h 
f
72.24 495.6 m 
72.24 495.12 l 
537.12 495.12 l 
537.12 495.6 l 
h 
f
72.24 492.96 m 
72.24 492.48 l 
537.12 492.48 l 
537.12 492.96 l 
h 
f
71.76 444.24 m 
71.76 443.76 l 
537.6 443.76 l 
537.6 444.24 l 
h 
f
71.76 310.32 m 
71.76 309.84 l 
537.6 309.84 l 
537.6 310.32 l 
h 
f
71.76 274.32 m 
71.76 273.84 l 
537.6 273.84 l 
537.6 274.32 l 
h 
f
71.76 252.24 m 
71.76 251.76 l 
537.6 251.76 l 
537.6 252.24 l 
h 
f
71.76 230.16 m 
71.76 229.68 l 
537.6 229.68 l 
537.6 230.16 l 
h 
f
71.76 208.32 m 
71.76 207.84 l 
537.6 207.84 l 
537.6 208.32 l 
h 
f
71.76 158.16 m 
71.76 157.68 l 
537.6 157.68 l 
537.6 158.16 l 
h 
f
71.76 136.32 m 
71.76 135.84 l 
537.6 135.84 l 
537.6 136.32 l 
h 
f
71.76 100.32 m 
71.76 99.84 l 
537.6 99.84 l 
537.6 100.32 l 
h 
f
endstream
endobj
30 0 obj
5365
endobj
27 0 obj
<<
/Type /Page
/Parent 28 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 29 0 R
>>
endobj
32 0 obj
<<
/Length 33 0 R
>>
stream
BT
77.76 502.08  TD
0 0 0 rg 
/F1 12  Tf
0.0554  Tc 0.0779  Tw (The I/O ports are not in the focus of this document, so please refer to the VHDL files regarding) Tj
-5.76 -14.16  TD 0.0829  Tc 0.1571  Tw (theit implementation. You may find the baudrate generator interesting due to its unlimited preci-) Tj
0 -13.92  TD 0.064  Tc -0.204  Tw (sion, and the Rx and Tx parts due to their very low size.) Tj
0 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (4.5) Tj
56.64 0  TD 0.0141  Tc (cpu_engine.vhd) Tj
-50.88 -18.72  TD /F1 12  Tf
0.06  Tc -0.14  Tw (This is the CPU itself. The structure of the ) Tj
206.4 0  TD /F0 12  Tf
-0.024  Tc 0  Tw (cpu_engine) Tj
58.08 0  TD /F1 12  Tf
0.14  Tc -0.3  Tw ( is as follows:) Tj
-264.48 -244.08  TD 0.0512  Tc 0.9088  Tw (The memory signals are also extended to the outside of this module in order to connect to an) Tj
-5.76 -13.92  TD 0.0429  Tc -0.1229  Tw (optional external SRAM and to the ) Tj
171.12 0  TD /F0 12  Tf
-0.015  Tc 0  Tw (input_output.vhd) Tj
89.76 0  TD /F1 12  Tf
0.1029  Tc -0.3429  Tw ( module.) Tj
-255.12 -19.92  TD 0.3105  Tw (The timing is as follows. All signals are clocked on the rising edge of the 40 MHz input clock.) Tj
-5.76 -14.16  TD 0.0759  Tc 0.2241  Tw (However, most signals are clocked on every second clock only. This is controlled by the T2 sig-) Tj
0 -13.92  TD 0.0896  Tc -0.0736  Tw (nal. The internal memory is dual-ported, but only to save address and data multiplexers. The first) Tj
T* 0.0429  Tc -0.2429  Tw (clock interval \(say T1, or better ) Tj
-2.64  Tc 0  Tw (\221) Tj
-0.096  Tc -0.144  Tw (not T2) Tj
-2.64  Tc 0  Tw (\222) Tj
0.0511  Tc -0.2474  Tw (\) is used for opcode reads, while the second phase \(T2\) is) Tj
0 -14.16  TD 0.0356  Tc -0.1556  Tw (used for all other \(that is, oprand transfers; immediate operands are counted as opcode reads\).) Tj
6 588  TD /F0 12  Tf
0.02  Tc 0  Tw (OUT_INT_MASK) Tj
95.28 0  TD /F1 12  Tf
0.0587  Tc -0.2114  Tw (: The interrupt maks for Rx, Tx and Timer interrupts. 1 ) Tj
-95.28 -13.92  TD 0.1  Tc -0.18  Tw (means interrupt is enabled.) Tj
0 -13.92  TD 0  Tc -0.16  Tw (Bit 7..3: not used) Tj
0 -14.16  TD 0.0821  Tc -0.1621  Tw (Bit 2:Enable Timer interrupt \(1 ms interval\)) Tj
0 -13.92  TD 0.0785  Tc -0.2385  Tw (Bit 1: Enable Rx Interrupt \(receiver has received valid data\)) Tj
T* 0.0185  Tc -0.1785  Tw (Bit 0: Enable Tx Interrupt \(transmitter ready to accept data\)) Tj
424.08 69.84  TD 0  Tc 0  Tw (3) Tj
-424.08 -91.92  TD /F0 12  Tf
-0.024  Tc (OUT_RESET_TIMER) Tj
117.84 0  TD /F1 12  Tf
0.0857  Tc -0.1457  Tw (: Writing clears Timer interrupt) Tj
306.24 0  TD 0  Tc 0  Tw (4) Tj
-424.08 -22.08  TD /F0 12  Tf
-0.0141  Tc (OUT_START_CLK_CTR) Tj
135.36 0  TD /F1 12  Tf
-0.0065  Tc -0.1135  Tw (: Start a 16 bit counter clocked at a rate of 20 ) Tj
-135.36 -13.92  TD 0.1111  Tc -0.2611  Tw (MHz. Useful for measuring short intervals with high precision.) Tj
424.08 13.92  TD 0  Tc 0  Tw (5) Tj
-424.08 -36  TD /F0 12  Tf
-0.0075  Tc (OUT_STOP_CLK_CTR) Tj
126.72 0  TD /F1 12  Tf
-0.024  Tc -0.072  Tw (: Stop the 16 bit counter) Tj
25.2 174  TD -0.04  Tc 0.04  Tw (Port Function) Tj
238.56 0  TD -0.12  Tc 0  Tw (IN) Tj
36 0  TD 0  Tc (OUT) Tj
ET
71.76 522.24 0.48 197.52 re f
453.36 521.76 0.48 198.48 re f
495.84 521.76 0.48 198.48 re f
537.12 522.24 0.48 197.52 re f
71.76 720.24 m 
71.76 719.76 l 
537.6 719.76 l 
537.6 720.24 l 
h 
f
72.24 695.52 m 
72.24 695.04 l 
537.12 695.04 l 
537.12 695.52 l 
h 
f
72.24 693.12 m 
72.24 692.64 l 
537.12 692.64 l 
537.12 693.12 l 
h 
f
71.76 602.16 m 
71.76 601.68 l 
537.6 601.68 l 
537.6 602.16 l 
h 
f
71.76 580.32 m 
71.76 579.84 l 
537.6 579.84 l 
537.6 580.32 l 
h 
f
71.76 544.32 m 
71.76 543.84 l 
537.6 543.84 l 
537.6 544.32 l 
h 
f
71.76 522.24 m 
71.76 521.76 l 
537.6 521.76 l 
537.6 522.24 l 
h 
f
1 1 1 rg 
72 217.92 468 184.08 re f
444.72 239.04 84.96 42.48 re f
0 0 0 rg 
444.72 279.84 86.64 3.12 re f
528.24 237.36 3.12 44.16 re f
443.28 237.36 86.4 3.12 re f
443.28 239.04 3.12 43.92 re f
BT
462 254.88  TD
/F0 12  Tf
0.0133  Tc (data_core) Tj
ET
1 1 1 rg 
260.4 239.04 85.2 42.48 re f
0 0 0 rg 
260.4 279.84 86.88 3.12 re f
344.16 237.36 3.12 44.16 re f
258.96 237.36 86.64 3.12 re f
258.96 239.04 3.12 43.92 re f
BT
281.76 254.88  TD
0.08  Tc (memory) Tj
ET
1 1 1 rg 
76.32 239.04 84.96 42.48 re f
0 0 0 rg 
76.32 279.84 86.64 3.12 re f
159.84 237.36 3.12 44.16 re f
74.88 237.36 86.4 3.12 re f
74.88 239.04 3.12 43.92 re f
BT
85.2 254.88  TD
0.01  Tc (opcode_fetch) Tj
ET
1 1 1 rg 
253.44 338.16 99.12 42.48 re f
0 0 0 rg 
253.44 378.96 100.8 3.12 re f
351.12 336.48 3.12 44.16 re f
252 336.48 100.56 3.12 re f
252 338.16 3.12 43.92 re f
BT
261.6 354.24  TD
-0.0171  Tc (opcode_decoder) Tj
ET
248.88 260.16 m 
248.88 263.52 l 
249.6 263.28 l 
258.96 260.64 l 
260.64 260.16 l 
258.96 259.68 l 
249.6 257.04 l 
248.88 256.8 l 
248.88 257.52 l 
249.36 258 l 
258.72 260.64 l 
258.96 259.68 l 
258.72 259.68 l 
249.36 262.32 l 
249.6 263.28 l 
249.84 262.8 l 
249.84 260.16 l 
h 
f
248.88 257.52 m 
248.88 260.16 l 
249.84 260.16 l 
249.84 257.52 l 
h 
f
249.36 260.16 m 
249.36 262.8 l 
258.72 260.16 l 
249.36 257.52 l 
h 
f*
161.04 259.92 0.24 0.48 re f
248.88 259.92 0.24 0.48 re f
161.28 260.4 m 
161.28 259.92 l 
248.88 259.92 l 
248.88 260.4 l 
h 
f
357.12 274.32 m 
357.12 270.96 l 
356.4 271.2 l 
347.04 273.84 l 
345.36 274.32 l 
347.04 274.8 l 
356.4 277.68 l 
357.12 277.92 l 
357.12 277.2 l 
356.64 276.72 l 
347.28 273.84 l 
347.04 274.8 l 
347.28 274.8 l 
356.64 272.16 l 
356.4 271.2 l 
356.16 271.68 l 
356.16 274.32 l 
h 
f
357.12 277.2 m 
357.12 274.32 l 
356.16 274.32 l 
356.16 277.2 l 
h 
f
356.64 274.32 m 
356.64 271.68 l 
347.28 274.32 l 
356.64 277.2 l 
h 
f*
356.88 274.08 0.24 0.48 re f
444.72 274.08 0.24 0.48 re f
357.12 274.56 m 
357.12 274.08 l 
444.72 274.08 l 
444.72 274.56 l 
h 
f
274.56 326.64 m 
271.2 326.64 l 
271.44 327.36 l 
274.08 336.72 l 
274.56 338.4 l 
275.04 336.72 l 
277.68 327.36 l 
277.92 326.64 l 
277.2 326.64 l 
276.72 327.12 l 
274.08 336.48 l 
275.04 336.72 l 
275.04 336.48 l 
272.4 327.12 l 
271.44 327.36 l 
271.92 327.6 l 
274.56 327.6 l 
h 
f
277.2 326.64 m 
274.56 326.64 l 
274.56 327.6 l 
277.2 327.6 l 
h 
f
274.56 327.12 m 
271.92 327.12 l 
274.56 336.48 l 
277.2 327.12 l 
h 
f*
274.32 281.52 m 
274.32 281.28 l 
274.8 281.28 l 
274.8 281.52 l 
h 
f
274.32 326.64 m 
274.32 326.88 l 
274.8 326.88 l 
274.8 326.64 l 
h 
f
274.32 281.52 0.48 45.12 re f
357.12 260.16 m 
357.12 256.8 l 
356.4 257.04 l 
347.04 259.68 l 
345.36 260.16 l 
347.04 260.64 l 
356.4 263.28 l 
357.12 263.52 l 
357.12 262.8 l 
356.64 262.32 l 
347.28 259.68 l 
347.04 260.64 l 
347.28 260.64 l 
356.64 258 l 
356.4 257.04 l 
356.16 257.52 l 
356.16 260.16 l 
h 
f
357.12 262.8 m 
357.12 260.16 l 
356.16 260.16 l 
356.16 262.8 l 
h 
f
356.64 260.16 m 
356.64 257.52 l 
347.28 260.16 l 
356.64 262.8 l 
h 
f*
356.88 259.92 0.24 0.48 re f
444.72 259.92 0.24 0.48 re f
357.12 260.4 m 
357.12 259.92 l 
444.72 259.92 l 
444.72 260.4 l 
h 
f
BT
175.44 262.32  TD
/F0 9.84  Tf
0.1056  Tc (PC) Tj
106.56 45.84  TD 0.152  Tc (OPC) Tj
ET
487.2 293.04 m 
490.56 293.04 l 
490.32 292.32 l 
487.68 283.2 l 
487.2 281.52 l 
486.72 283.2 l 
484.08 292.32 l 
483.84 293.04 l 
484.56 293.04 l 
485.04 292.56 l 
487.68 283.44 l 
486.72 283.2 l 
486.72 283.44 l 
489.36 292.56 l 
490.32 292.32 l 
489.84 292.08 l 
487.2 292.08 l 
h 
f
484.56 293.04 m 
487.2 293.04 l 
487.2 292.08 l 
484.56 292.08 l 
h 
f
487.2 292.56 m 
489.84 292.56 l 
487.2 283.44 l 
484.56 292.56 l 
h 
f*
352.32 359.28 0.24 0.48 re f
356.4 359.28 0.24 0.48 re f
352.56 359.76 m 
352.56 359.28 l 
356.4 359.28 l 
356.4 359.76 l 
h 
f
362.4 359.28 0.24 0.48 re f*
369.84 359.28 0.24 0.48 re f*
362.64 359.76 m 
362.64 359.28 l 
369.84 359.28 l 
369.84 359.76 l 
h 
f*
375.84 359.28 0.24 0.48 re f*
383.28 359.28 0.24 0.48 re f*
376.08 359.76 m 
376.08 359.28 l 
383.28 359.28 l 
383.28 359.76 l 
h 
f*
389.28 359.28 0.24 0.48 re f*
396.72 359.28 0.24 0.48 re f*
389.52 359.76 m 
389.52 359.28 l 
396.72 359.28 l 
396.72 359.76 l 
h 
f*
402.72 359.28 0.24 0.48 re f*
410.16 359.28 0.24 0.48 re f*
402.96 359.76 m 
402.96 359.28 l 
410.16 359.28 l 
410.16 359.76 l 
h 
f*
416.16 359.28 0.24 0.48 re f*
423.6 359.28 0.24 0.48 re f*
416.4 359.76 m 
416.4 359.28 l 
423.6 359.28 l 
423.6 359.76 l 
h 
f*
429.6 359.28 0.24 0.48 re f*
437.04 359.28 0.24 0.48 re f*
429.84 359.76 m 
429.84 359.28 l 
437.04 359.28 l 
437.04 359.76 l 
h 
f*
443.04 359.28 0.24 0.48 re f*
450.48 359.28 0.24 0.48 re f*
443.28 359.76 m 
443.28 359.28 l 
450.48 359.28 l 
450.48 359.76 l 
h 
f*
456.48 359.28 0.24 0.48 re f*
463.92 359.28 0.24 0.48 re f*
456.72 359.76 m 
456.72 359.28 l 
463.92 359.28 l 
463.92 359.76 l 
h 
f*
469.92 359.28 0.24 0.48 re f*
477.36 359.28 0.24 0.48 re f*
470.16 359.76 m 
470.16 359.28 l 
477.36 359.28 l 
477.36 359.76 l 
h 
f*
483.36 359.28 0.24 0.48 re f
483.6 359.28 3.84 0.48 re f
487.44 355.68 m 
487.44 355.44 l 
486.96 355.44 l 
486.96 355.68 l 
h 
f
486.96 355.68 0.48 3.84 re f
487.44 349.68 m 
487.44 349.92 l 
486.96 349.92 l 
486.96 349.68 l 
h 
f*
487.44 342.48 m 
487.44 342.24 l 
486.96 342.24 l 
486.96 342.48 l 
h 
f*
486.96 342.48 0.48 7.2 re f*
487.44 336.48 m 
487.44 336.72 l 
486.96 336.72 l 
486.96 336.48 l 
h 
f*
487.44 329.28 m 
487.44 329.04 l 
486.96 329.04 l 
486.96 329.28 l 
h 
f*
486.96 329.28 0.48 7.2 re f*
487.44 323.28 m 
487.44 323.52 l 
486.96 323.52 l 
486.96 323.28 l 
h 
f*
487.44 316.08 m 
487.44 315.84 l 
486.96 315.84 l 
486.96 316.08 l 
h 
f*
486.96 316.08 0.48 7.2 re f*
487.44 310.08 m 
487.44 310.32 l 
486.96 310.32 l 
486.96 310.08 l 
h 
f*
487.44 302.88 m 
487.44 302.64 l 
486.96 302.64 l 
486.96 302.88 l 
h 
f*
486.96 302.88 0.48 7.2 re f*
487.44 296.88 m 
487.44 297.12 l 
486.96 297.12 l 
486.96 296.88 l 
h 
f
487.44 293.04 m 
487.44 292.8 l 
486.96 292.8 l 
486.96 293.04 l 
h 
f
486.96 293.04 0.48 3.84 re f
118.8 293.04 m 
122.16 293.04 l 
121.92 292.32 l 
119.28 283.2 l 
118.8 281.52 l 
118.32 283.2 l 
115.68 292.32 l 
115.44 293.04 l 
116.16 293.04 l 
116.64 292.56 l 
119.28 283.44 l 
118.32 283.2 l 
118.32 283.44 l 
120.96 292.56 l 
121.92 292.32 l 
121.44 292.08 l 
118.8 292.08 l 
h 
f
116.16 293.04 m 
118.8 293.04 l 
118.8 292.08 l 
116.16 292.08 l 
h 
f
118.8 292.56 m 
121.44 292.56 l 
118.8 283.44 l 
116.16 292.56 l 
h 
f*
253.44 352.08 0.24 0.48 re f
249.36 352.08 0.24 0.48 re f
253.44 352.08 m 
253.44 352.56 l 
249.6 352.56 l 
249.6 352.08 l 
h 
f
243.36 352.08 0.24 0.48 re f*
235.92 352.08 0.24 0.48 re f*
243.36 352.08 m 
243.36 352.56 l 
236.16 352.56 l 
236.16 352.08 l 
h 
f*
229.92 352.08 0.24 0.48 re f*
222.48 352.08 0.24 0.48 re f*
229.92 352.08 m 
229.92 352.56 l 
222.72 352.56 l 
222.72 352.08 l 
h 
f*
216.48 352.08 0.24 0.48 re f*
209.04 352.08 0.24 0.48 re f*
216.48 352.08 m 
216.48 352.56 l 
209.28 352.56 l 
209.28 352.08 l 
h 
f*
203.04 352.08 0.24 0.48 re f*
195.6 352.08 0.24 0.48 re f*
203.04 352.08 m 
203.04 352.56 l 
195.84 352.56 l 
195.84 352.08 l 
h 
f*
189.6 352.08 0.24 0.48 re f*
182.16 352.08 0.24 0.48 re f*
189.6 352.08 m 
189.6 352.56 l 
182.4 352.56 l 
182.4 352.08 l 
h 
f*
176.16 352.08 0.24 0.48 re f*
168.72 352.08 0.24 0.48 re f*
176.16 352.08 m 
176.16 352.56 l 
168.96 352.56 l 
168.96 352.08 l 
h 
f*
162.72 352.08 0.24 0.48 re f*
155.28 352.08 0.24 0.48 re f*
162.72 352.08 m 
162.72 352.56 l 
155.52 352.56 l 
155.52 352.08 l 
h 
f*
149.28 352.08 0.24 0.48 re f*
141.84 352.08 0.24 0.48 re f*
149.28 352.08 m 
149.28 352.56 l 
142.08 352.56 l 
142.08 352.08 l 
h 
f*
135.84 352.08 0.24 0.48 re f*
128.4 352.08 0.24 0.48 re f*
135.84 352.08 m 
135.84 352.56 l 
128.64 352.56 l 
128.64 352.08 l 
h 
f*
122.4 352.08 0.24 0.48 re f
118.56 352.08 3.84 0.48 re f
119.04 348.72 m 
119.04 348.48 l 
118.56 348.48 l 
118.56 348.72 l 
h 
f
118.56 348.72 0.48 3.6 re f
119.04 341.76 m 
119.04 342 l 
118.56 342 l 
118.56 341.76 l 
h 
f*
119.04 333.6 m 
119.04 333.36 l 
118.56 333.36 l 
118.56 333.6 l 
h 
f*
118.56 333.6 0.48 8.16 re f*
119.04 326.64 m 
119.04 326.88 l 
118.56 326.88 l 
118.56 326.64 l 
h 
f*
119.04 318.72 m 
119.04 318.48 l 
118.56 318.48 l 
118.56 318.72 l 
h 
f*
118.56 318.72 0.48 7.92 re f*
119.04 311.76 m 
119.04 312 l 
118.56 312 l 
118.56 311.76 l 
h 
f*
119.04 303.84 m 
119.04 303.6 l 
118.56 303.6 l 
118.56 303.84 l 
h 
f*
118.56 303.84 0.48 7.92 re f*
119.04 296.88 m 
119.04 297.12 l 
118.56 297.12 l 
118.56 296.88 l 
h 
f
119.04 293.04 m 
119.04 292.8 l 
118.56 292.8 l 
118.56 293.04 l 
h 
f
118.56 293.04 0.48 3.84 re f
324.24 293.04 m 
327.6 293.04 l 
327.36 292.32 l 
324.72 283.2 l 
324.24 281.52 l 
323.76 283.2 l 
321.12 292.32 l 
320.88 293.04 l 
321.6 293.04 l 
322.08 292.56 l 
324.72 283.44 l 
323.76 283.2 l 
323.76 283.44 l 
326.4 292.56 l 
327.36 292.32 l 
326.88 292.08 l 
324.24 292.08 l 
h 
f
321.6 293.04 m 
324.24 293.04 l 
324.24 292.08 l 
321.6 292.08 l 
h 
f
324.24 292.56 m 
326.88 292.56 l 
324.24 283.44 l 
321.6 292.56 l 
h 
f*
324.48 338.16 m 
324.48 338.4 l 
324 338.4 l 
324 338.16 l 
h 
f
324.48 334.56 m 
324.48 334.32 l 
324 334.32 l 
324 334.56 l 
h 
f
324 334.56 0.48 3.6 re f
324.48 327.36 m 
324.48 327.6 l 
324 327.6 l 
324 327.36 l 
h 
f*
324.48 319.2 m 
324.48 318.96 l 
324 318.96 l 
324 319.2 l 
h 
f*
324 319.2 0.48 8.16 re f*
324.48 312 m 
324.48 312.24 l 
324 312.24 l 
324 312 l 
h 
f*
324.48 303.84 m 
324.48 303.6 l 
324 303.6 l 
324 303.84 l 
h 
f*
324 303.84 0.48 8.16 re f*
324.48 296.88 m 
324.48 297.12 l 
324 297.12 l 
324 296.88 l 
h 
f
324.48 293.04 m 
324.48 292.8 l 
324 292.8 l 
324 293.04 l 
h 
f
324 293.04 0.48 3.84 re f
BT
118.8 354.48  TD
0.0871  Tc (CONTROL) Tj
318 7.2  TD (CONTROL) Tj
-105.36 -46.56  TD (CONTROL) Tj
56.64 -38.64  TD 0.1152  Tc (ADR) Tj
-14.16 -28.32  TD 0.1182  Tc (RDAT) Tj
ET
433.2 246 m 
433.2 249.36 l 
433.92 249.12 l 
443.04 246.48 l 
444.72 246 l 
443.04 245.52 l 
433.92 242.88 l 
433.2 242.64 l 
433.2 243.36 l 
433.68 243.84 l 
442.8 246.48 l 
443.04 245.52 l 
442.8 245.52 l 
433.68 248.16 l 
433.92 249.12 l 
434.16 248.64 l 
434.16 246 l 
h 
f
433.2 243.36 m 
433.2 246 l 
434.16 246 l 
434.16 243.36 l 
h 
f
433.68 246 m 
433.68 248.64 l 
442.8 246 l 
433.68 243.36 l 
h 
f*
345.36 245.76 0.24 0.48 re f
433.2 245.76 0.24 0.48 re f
345.6 246.24 m 
345.6 245.76 l 
433.2 245.76 l 
433.2 246.24 l 
h 
f
BT
388.08 262.32  TD
0.0294  Tc (WDAT) Tj
ET
239.04 373.68 m 
239.04 377.76 l 
239.76 377.52 l 
251.76 374.16 l 
253.44 373.68 l 
251.76 373.2 l 
239.76 369.6 l 
239.04 369.36 l 
239.04 370.08 l 
239.52 370.56 l 
251.52 374.16 l 
251.76 373.2 l 
251.52 373.2 l 
239.52 376.56 l 
239.76 377.52 l 
240 377.04 l 
240 373.68 l 
h 
f
239.04 370.08 m 
239.04 373.68 l 
240 373.68 l 
240 370.08 l 
h 
f
239.52 373.68 m 
239.52 377.04 l 
251.52 373.68 l 
239.52 370.08 l 
h 
f*
217.44 373.2 0.48 0.96 re f
239.04 373.2 0.48 0.96 re f
217.92 374.16 m 
217.92 373.2 l 
239.04 373.2 l 
239.04 374.16 l 
h 
f
BT
193.2 369.12  TD
0.0816  Tc (INT) Tj
ET
endstream
endobj
33 0 obj
14915
endobj
31 0 obj
<<
/Type /Page
/Parent 28 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 32 0 R
>>
endobj
35 0 obj
<<
/Length 36 0 R
>>
stream
BT
77.76 502.08  TD
0 0 0 rg 
/F1 12  Tf
0.0554  Tc 0.0779  Tw (The I/O ports are not in the focus of this document, so please refer to the VHDL files regarding) Tj
-5.76 -14.16  TD 0.0829  Tc 0.1571  Tw (theit implementation. You may find the baudrate generator interesting due to its unlimited preci-) Tj
0 -13.92  TD 0.064  Tc -0.204  Tw (sion, and the Rx and Tx parts due to their very low size.) Tj
0 -29.28  TD /F0 13.92  Tf
-0.04  Tc 0  Tw (4.5) Tj
56.64 0  TD 0.0141  Tc (cpu_engine.vhd) Tj
-50.88 -18.72  TD /F1 12  Tf
0.06  Tc -0.14  Tw (This is the CPU itself. The structure of the ) Tj
206.4 0  TD /F0 12  Tf
-0.024  Tc 0  Tw (cpu_engine) Tj
58.08 0  TD /F1 12  Tf
0.14  Tc -0.3  Tw ( is as follows:) Tj
-264.48 -244.08  TD 0.0512  Tc 0.9088  Tw (The memory signals are also extended to the outside of this module in order to connect to an) Tj
-5.76 -13.92  TD 0.0429  Tc -0.1229  Tw (optional external SRAM and to the ) Tj
171.12 0  TD /F0 12  Tf
-0.015  Tc 0  Tw (input_output.vhd) Tj
89.76 0  TD /F1 12  Tf
0.1029  Tc -0.3429  Tw ( module.) Tj
-255.12 -19.92  TD 0.3105  Tw (The timing is as follows. All signals are clocked on the rising edge of the 40 MHz input clock.) Tj
-5.76 -14.16  TD 0.0759  Tc 0.2241  Tw (However, most signals are clocked on every second clock only. This is controlled by the T2 sig-) Tj
0 -13.92  TD 0.0896  Tc -0.0736  Tw (nal. The internal memory is dual-ported, but only to save address and data multiplexers. The first) Tj
T* 0.0429  Tc -0.2429  Tw (clock interval \(say T1, or better ) Tj
-2.64  Tc 0  Tw (\221) Tj
-0.096  Tc -0.144  Tw (not T2) Tj
-2.64  Tc 0  Tw (\222) Tj
0.0511  Tc -0.2474  Tw (\) is used for opcode reads, while the second phase \(T2\) is) Tj
0 -14.16  TD 0.0356  Tc -0.1556  Tw (used for all other \(that is, oprand transfers; immediate operands are counted as opcode reads\).) Tj
6 588  TD /F0 12  Tf
0.02  Tc 0  Tw (OUT_INT_MASK) Tj
95.28 0  TD /F1 12  Tf
0.0587  Tc -0.2114  Tw (: The interrupt maks for Rx, Tx and Timer interrupts. 1 ) Tj
-95.28 -13.92  TD 0.1  Tc -0.18  Tw (means interrupt is enabled.) Tj
0 -13.92  TD 0  Tc -0.16  Tw (Bit 7..3: not used) Tj
0 -14.16  TD 0.0821  Tc -0.1621  Tw (Bit 2:Enable Timer interrupt \(1 ms interval\)) Tj
0 -13.92  TD 0.0785  Tc -0.2385  Tw (Bit 1: Enable Rx Interrupt \(receiver has received valid data\)) Tj
T* 0.0185  Tc -0.1785  Tw (Bit 0: Enable Tx Interrupt \(transmitter ready to accept data\)) Tj
424.08 69.84  TD 0  Tc 0  Tw (3) Tj
-424.08 -91.92  TD /F0 12  Tf
-0.024  Tc (OUT_RESET_TIMER) Tj
117.84 0  TD /F1 12  Tf
0.0857  Tc -0.1457  Tw (: Writing clears Timer interrupt) Tj
306.24 0  TD 0  Tc 0  Tw (4) Tj
-424.08 -22.08  TD /F0 12  Tf
-0.0141  Tc (OUT_START_CLK_CTR) Tj
135.36 0  TD /F1 12  Tf
-0.0065  Tc -0.1135  Tw (: Start a 16 bit counter clocked at a rate of 20 ) Tj
-135.36 -13.92  TD 0.1111  Tc -0.2611  Tw (MHz. Useful for measuring short intervals with high precision.) Tj
424.08 13.92  TD 0  Tc 0  Tw (5) Tj
-424.08 -36  TD /F0 12  Tf
-0.0075  Tc (OUT_STOP_CLK_CTR) Tj
126.72 0  TD /F1 12  Tf
-0.024  Tc -0.072  Tw (: Stop the 16 bit counter) Tj
25.2 174  TD -0.04  Tc 0.04  Tw (Port Function) Tj
238.56 0  TD -0.12  Tc 0  Tw (IN) Tj
36 0  TD 0  Tc (OUT) Tj
ET
71.76 522.24 0.48 197.52 re f
453.36 521.76 0.48 198.48 re f
495.84 521.76 0.48 198.48 re f
537.12 522.24 0.48 197.52 re f
71.76 720.24 m 
71.76 719.76 l 
537.6 719.76 l 
537.6 720.24 l 
h 
f
72.24 695.52 m 
72.24 695.04 l 
537.12 695.04 l 
537.12 695.52 l 
h 
f
72.24 693.12 m 
72.24 692.64 l 
537.12 692.64 l 
537.12 693.12 l 
h 
f
71.76 602.16 m 
71.76 601.68 l 
537.6 601.68 l 
537.6 602.16 l 
h 
f
71.76 580.32 m 
71.76 579.84 l 
537.6 579.84 l 
537.6 580.32 l 
h 
f
71.76 544.32 m 
71.76 543.84 l 
537.6 543.84 l 
537.6 544.32 l 
h 
f
71.76 522.24 m 
71.76 521.76 l 
537.6 521.76 l 
537.6 522.24 l 
h 
f
1 1 1 rg 
72 217.92 468 184.08 re f
444.72 239.04 84.96 42.48 re f
0 0 0 rg 
444.72 279.84 86.64 3.12 re f
528.24 237.36 3.12 44.16 re f
443.28 237.36 86.4 3.12 re f
443.28 239.04 3.12 43.92 re f
BT
462 254.88  TD
/F0 12  Tf
0.0133  Tc (data_core) Tj
ET
1 1 1 rg 
260.4 239.04 85.2 42.48 re f
0 0 0 rg 
260.4 279.84 86.88 3.12 re f
344.16 237.36 3.12 44.16 re f
258.96 237.36 86.64 3.12 re f
258.96 239.04 3.12 43.92 re f
BT
281.76 254.88  TD
0.08  Tc (memory) Tj
ET
1 1 1 rg 
76.32 239.04 84.96 42.48 re f
0 0 0 rg 
76.32 279.84 86.64 3.12 re f
159.84 237.36 3.12 44.16 re f
74.88 237.36 86.4 3.12 re f
74.88 239.04 3.12 43.92 re f
BT
85.2 254.88  TD
0.01  Tc (opcode_fetch) Tj
ET
1 1 1 rg 
253.44 338.16 99.12 42.48 re f
0 0 0 rg 
253.44 378.96 100.8 3.12 re f
351.12 336.48 3.12 44.16 re f
252 336.48 100.56 3.12 re f
252 338.16 3.12 43.92 re f
BT
261.6 354.24  TD
-0.0171  Tc (opcode_decoder) Tj
ET
248.88 260.16 m 
248.88 263.52 l 
249.6 263.28 l 
258.96 260.64 l 
260.64 260.16 l 
258.96 259.68 l 
249.6 257.04 l 
248.88 256.8 l 
248.88 257.52 l 
249.36 258 l 
258.72 260.64 l 
258.96 259.68 l 
258.72 259.68 l 
249.36 262.32 l 
249.6 263.28 l 
249.84 262.8 l 
249.84 260.16 l 
h 
f
248.88 257.52 m 
248.88 260.16 l 
249.84 260.16 l 
249.84 257.52 l 
h 
f
249.36 260.16 m 
249.36 262.8 l 
258.72 260.16 l 
249.36 257.52 l 
h 
f*
161.04 259.92 0.24 0.48 re f
248.88 259.92 0.24 0.48 re f
161.28 260.4 m 
161.28 259.92 l 
248.88 259.92 l 
248.88 260.4 l 
h 
f
357.12 274.32 m 
357.12 270.96 l 
356.4 271.2 l 
347.04 273.84 l 
345.36 274.32 l 
347.04 274.8 l 
356.4 277.68 l 
357.12 277.92 l 
357.12 277.2 l 
356.64 276.72 l 
347.28 273.84 l 
347.04 274.8 l 
347.28 274.8 l 
356.64 272.16 l 
356.4 271.2 l 
356.16 271.68 l 
356.16 274.32 l 
h 
f
357.12 277.2 m 
357.12 274.32 l 
356.16 274.32 l 
356.16 277.2 l 
h 
f
356.64 274.32 m 
356.64 271.68 l 
347.28 274.32 l 
356.64 277.2 l 
h 
f*
356.88 274.08 0.24 0.48 re f
444.72 274.08 0.24 0.48 re f
357.12 274.56 m 
357.12 274.08 l 
444.72 274.08 l 
444.72 274.56 l 
h 
f
274.56 326.64 m 
271.2 326.64 l 
271.44 327.36 l 
274.08 336.72 l 
274.56 338.4 l 
275.04 336.72 l 
277.68 327.36 l 
277.92 326.64 l 
277.2 326.64 l 
276.72 327.12 l 
274.08 336.48 l 
275.04 336.72 l 
275.04 336.48 l 
272.4 327.12 l 
271.44 327.36 l 
271.92 327.6 l 
274.56 327.6 l 
h 
f
277.2 326.64 m 
274.56 326.64 l 
274.56 327.6 l 
277.2 327.6 l 
h 
f
274.56 327.12 m 
271.92 327.12 l 
274.56 336.48 l 
277.2 327.12 l 
h 
f*
274.32 281.52 m 
274.32 281.28 l 
274.8 281.28 l 
274.8 281.52 l 
h 
f
274.32 326.64 m 
274.32 326.88 l 
274.8 326.88 l 
274.8 326.64 l 
h 
f
274.32 281.52 0.48 45.12 re f
357.12 260.16 m 
357.12 256.8 l 
356.4 257.04 l 
347.04 259.68 l 
345.36 260.16 l 
347.04 260.64 l 
356.4 263.28 l 
357.12 263.52 l 
357.12 262.8 l 
356.64 262.32 l 
347.28 259.68 l 
347.04 260.64 l 
347.28 260.64 l 
356.64 258 l 
356.4 257.04 l 
356.16 257.52 l 
356.16 260.16 l 
h 
f
357.12 262.8 m 
357.12 260.16 l 
356.16 260.16 l 
356.16 262.8 l 
h 
f
356.64 260.16 m 
356.64 257.52 l 
347.28 260.16 l 
356.64 262.8 l 
h 
f*
356.88 259.92 0.24 0.48 re f
444.72 259.92 0.24 0.48 re f
357.12 260.4 m 
357.12 259.92 l 
444.72 259.92 l 
444.72 260.4 l 
h 
f
BT
175.44 262.32  TD
/F0 9.84  Tf
0.1056  Tc (PC) Tj
106.56 45.84  TD 0.152  Tc (OPC) Tj
ET
487.2 293.04 m 
490.56 293.04 l 
490.32 292.32 l 
487.68 283.2 l 
487.2 281.52 l 
486.72 283.2 l 
484.08 292.32 l 
483.84 293.04 l 
484.56 293.04 l 
485.04 292.56 l 
487.68 283.44 l 
486.72 283.2 l 
486.72 283.44 l 
489.36 292.56 l 
490.32 292.32 l 
489.84 292.08 l 
487.2 292.08 l 
h 
f
484.56 293.04 m 
487.2 293.04 l 
487.2 292.08 l 
484.56 292.08 l 
h 
f
487.2 292.56 m 
489.84 292.56 l 
487.2 283.44 l 
484.56 292.56 l 
h 
f*
352.32 359.28 0.24 0.48 re f
356.4 359.28 0.24 0.48 re f
352.56 359.76 m 
352.56 359.28 l 
356.4 359.28 l 
356.4 359.76 l 
h 
f
362.4 359.28 0.24 0.48 re f*
369.84 359.28 0.24 0.48 re f*
362.64 359.76 m 
362.64 359.28 l 
369.84 359.28 l 
369.84 359.76 l 
h 
f*
375.84 359.28 0.24 0.48 re f*
383.28 359.28 0.24 0.48 re f*
376.08 359.76 m 
376.08 359.28 l 
383.28 359.28 l 
383.28 359.76 l 
h 
f*
389.28 359.28 0.24 0.48 re f*
396.72 359.28 0.24 0.48 re f*
389.52 359.76 m 
389.52 359.28 l 
396.72 359.28 l 
396.72 359.76 l 
h 
f*
402.72 359.28 0.24 0.48 re f*
410.16 359.28 0.24 0.48 re f*
402.96 359.76 m 
402.96 359.28 l 
410.16 359.28 l 
410.16 359.76 l 
h 
f*
416.16 359.28 0.24 0.48 re f*
423.6 359.28 0.24 0.48 re f*
416.4 359.76 m 
416.4 359.28 l 
423.6 359.28 l 
423.6 359.76 l 
h 
f*
429.6 359.28 0.24 0.48 re f*
437.04 359.28 0.24 0.48 re f*
429.84 359.76 m 
429.84 359.28 l 
437.04 359.28 l 
437.04 359.76 l 
h 
f*
443.04 359.28 0.24 0.48 re f*
450.48 359.28 0.24 0.48 re f*
443.28 359.76 m 
443.28 359.28 l 
450.48 359.28 l 
450.48 359.76 l 
h 
f*
456.48 359.28 0.24 0.48 re f*
463.92 359.28 0.24 0.48 re f*
456.72 359.76 m 
456.72 359.28 l 
463.92 359.28 l 
463.92 359.76 l 
h 
f*
469.92 359.28 0.24 0.48 re f*
477.36 359.28 0.24 0.48 re f*
470.16 359.76 m 
470.16 359.28 l 
477.36 359.28 l 
477.36 359.76 l 
h 
f*
483.36 359.28 0.24 0.48 re f
483.6 359.28 3.84 0.48 re f
487.44 355.68 m 
487.44 355.44 l 
486.96 355.44 l 
486.96 355.68 l 
h 
f
486.96 355.68 0.48 3.84 re f
487.44 349.68 m 
487.44 349.92 l 
486.96 349.92 l 
486.96 349.68 l 
h 
f*
487.44 342.48 m 
487.44 342.24 l 
486.96 342.24 l 
486.96 342.48 l 
h 
f*
486.96 342.48 0.48 7.2 re f*
487.44 336.48 m 
487.44 336.72 l 
486.96 336.72 l 
486.96 336.48 l 
h 
f*
487.44 329.28 m 
487.44 329.04 l 
486.96 329.04 l 
486.96 329.28 l 
h 
f*
486.96 329.28 0.48 7.2 re f*
487.44 323.28 m 
487.44 323.52 l 
486.96 323.52 l 
486.96 323.28 l 
h 
f*
487.44 316.08 m 
487.44 315.84 l 
486.96 315.84 l 
486.96 316.08 l 
h 
f*
486.96 316.08 0.48 7.2 re f*
487.44 310.08 m 
487.44 310.32 l 
486.96 310.32 l 
486.96 310.08 l 
h 
f*
487.44 302.88 m 
487.44 302.64 l 
486.96 302.64 l 
486.96 302.88 l 
h 
f*
486.96 302.88 0.48 7.2 re f*
487.44 296.88 m 
487.44 297.12 l 
486.96 297.12 l 
486.96 296.88 l 
h 
f
487.44 293.04 m 
487.44 292.8 l 
486.96 292.8 l 
486.96 293.04 l 
h 
f
486.96 293.04 0.48 3.84 re f
118.8 293.04 m 
122.16 293.04 l 
121.92 292.32 l 
119.28 283.2 l 
118.8 281.52 l 
118.32 283.2 l 
115.68 292.32 l 
115.44 293.04 l 
116.16 293.04 l 
116.64 292.56 l 
119.28 283.44 l 
118.32 283.2 l 
118.32 283.44 l 
120.96 292.56 l 
121.92 292.32 l 
121.44 292.08 l 
118.8 292.08 l 
h 
f
116.16 293.04 m 
118.8 293.04 l 
118.8 292.08 l 
116.16 292.08 l 
h 
f
118.8 292.56 m 
121.44 292.56 l 
118.8 283.44 l 
116.16 292.56 l 
h 
f*
253.44 352.08 0.24 0.48 re f
249.36 352.08 0.24 0.48 re f
253.44 352.08 m 
253.44 352.56 l 
249.6 352.56 l 
249.6 352.08 l 
h 
f
243.36 352.08 0.24 0.48 re f*
235.92 352.08 0.24 0.48 re f*
243.36 352.08 m 
243.36 352.56 l 
236.16 352.56 l 
236.16 352.08 l 
h 
f*
229.92 352.08 0.24 0.48 re f*
222.48 352.08 0.24 0.48 re f*
229.92 352.08 m 
229.92 352.56 l 
222.72 352.56 l 
222.72 352.08 l 
h 
f*
216.48 352.08 0.24 0.48 re f*
209.04 352.08 0.24 0.48 re f*
216.48 352.08 m 
216.48 352.56 l 
209.28 352.56 l 
209.28 352.08 l 
h 
f*
203.04 352.08 0.24 0.48 re f*
195.6 352.08 0.24 0.48 re f*
203.04 352.08 m 
203.04 352.56 l 
195.84 352.56 l 
195.84 352.08 l 
h 
f*
189.6 352.08 0.24 0.48 re f*
182.16 352.08 0.24 0.48 re f*
189.6 352.08 m 
189.6 352.56 l 
182.4 352.56 l 
182.4 352.08 l 
h 
f*
176.16 352.08 0.24 0.48 re f*
168.72 352.08 0.24 0.48 re f*
176.16 352.08 m 
176.16 352.56 l 
168.96 352.56 l 
168.96 352.08 l 
h 
f*
162.72 352.08 0.24 0.48 re f*
155.28 352.08 0.24 0.48 re f*
162.72 352.08 m 
162.72 352.56 l 
155.52 352.56 l 
155.52 352.08 l 
h 
f*
149.28 352.08 0.24 0.48 re f*
141.84 352.08 0.24 0.48 re f*
149.28 352.08 m 
149.28 352.56 l 
142.08 352.56 l 
142.08 352.08 l 
h 
f*
135.84 352.08 0.24 0.48 re f*
128.4 352.08 0.24 0.48 re f*
135.84 352.08 m 
135.84 352.56 l 
128.64 352.56 l 
128.64 352.08 l 
h 
f*
122.4 352.08 0.24 0.48 re f
118.56 352.08 3.84 0.48 re f
119.04 348.72 m 
119.04 348.48 l 
118.56 348.48 l 
118.56 348.72 l 
h 
f
118.56 348.72 0.48 3.6 re f
119.04 341.76 m 
119.04 342 l 
118.56 342 l 
118.56 341.76 l 
h 
f*
119.04 333.6 m 
119.04 333.36 l 
118.56 333.36 l 
118.56 333.6 l 
h 
f*
118.56 333.6 0.48 8.16 re f*
119.04 326.64 m 
119.04 326.88 l 
118.56 326.88 l 
118.56 326.64 l 
h 
f*
119.04 318.72 m 
119.04 318.48 l 
118.56 318.48 l 
118.56 318.72 l 
h 
f*
118.56 318.72 0.48 7.92 re f*
119.04 311.76 m 
119.04 312 l 
118.56 312 l 
118.56 311.76 l 
h 
f*
119.04 303.84 m 
119.04 303.6 l 
118.56 303.6 l 
118.56 303.84 l 
h 
f*
118.56 303.84 0.48 7.92 re f*
119.04 296.88 m 
119.04 297.12 l 
118.56 297.12 l 
118.56 296.88 l 
h 
f
119.04 293.04 m 
119.04 292.8 l 
118.56 292.8 l 
118.56 293.04 l 
h 
f
118.56 293.04 0.48 3.84 re f
324.24 293.04 m 
327.6 293.04 l 
327.36 292.32 l 
324.72 283.2 l 
324.24 281.52 l 
323.76 283.2 l 
321.12 292.32 l 
320.88 293.04 l 
321.6 293.04 l 
322.08 292.56 l 
324.72 283.44 l 
323.76 283.2 l 
323.76 283.44 l 
326.4 292.56 l 
327.36 292.32 l 
326.88 292.08 l 
324.24 292.08 l 
h 
f
321.6 293.04 m 
324.24 293.04 l 
324.24 292.08 l 
321.6 292.08 l 
h 
f
324.24 292.56 m 
326.88 292.56 l 
324.24 283.44 l 
321.6 292.56 l 
h 
f*
324.48 338.16 m 
324.48 338.4 l 
324 338.4 l 
324 338.16 l 
h 
f
324.48 334.56 m 
324.48 334.32 l 
324 334.32 l 
324 334.56 l 
h 
f
324 334.56 0.48 3.6 re f
324.48 327.36 m 
324.48 327.6 l 
324 327.6 l 
324 327.36 l 
h 
f*
324.48 319.2 m 
324.48 318.96 l 
324 318.96 l 
324 319.2 l 
h 
f*
324 319.2 0.48 8.16 re f*
324.48 312 m 
324.48 312.24 l 
324 312.24 l 
324 312 l 
h 
f*
324.48 303.84 m 
324.48 303.6 l 
324 303.6 l 
324 303.84 l 
h 
f*
324 303.84 0.48 8.16 re f*
324.48 296.88 m 
324.48 297.12 l 
324 297.12 l 
324 296.88 l 
h 
f
324.48 293.04 m 
324.48 292.8 l 
324 292.8 l 
324 293.04 l 
h 
f
324 293.04 0.48 3.84 re f
BT
118.8 354.48  TD
0.0871  Tc (CONTROL) Tj
318 7.2  TD (CONTROL) Tj
-105.36 -46.56  TD (CONTROL) Tj
56.64 -38.64  TD 0.1152  Tc (ADR) Tj
-14.16 -28.32  TD 0.1182  Tc (RDAT) Tj
ET
433.2 246 m 
433.2 249.36 l 
433.92 249.12 l 
443.04 246.48 l 
444.72 246 l 
443.04 245.52 l 
433.92 242.88 l 
433.2 242.64 l 
433.2 243.36 l 
433.68 243.84 l 
442.8 246.48 l 
443.04 245.52 l 
442.8 245.52 l 
433.68 248.16 l 
433.92 249.12 l 
434.16 248.64 l 
434.16 246 l 
h 
f
433.2 243.36 m 
433.2 246 l 
434.16 246 l 
434.16 243.36 l 
h 
f
433.68 246 m 
433.68 248.64 l 
442.8 246 l 
433.68 243.36 l 
h 
f*
345.36 245.76 0.24 0.48 re f
433.2 245.76 0.24 0.48 re f
345.6 246.24 m 
345.6 245.76 l 
433.2 245.76 l 
433.2 246.24 l 
h 
f
BT
388.08 262.32  TD
0.0294  Tc (WDAT) Tj
ET
239.04 373.68 m 
239.04 377.76 l 
239.76 377.52 l 
251.76 374.16 l 
253.44 373.68 l 
251.76 373.2 l 
239.76 369.6 l 
239.04 369.36 l 
239.04 370.08 l 
239.52 370.56 l 
251.52 374.16 l 
251.76 373.2 l 
251.52 373.2 l 
239.52 376.56 l 
239.76 377.52 l 
240 377.04 l 
240 373.68 l 
h 
f
239.04 370.08 m 
239.04 373.68 l 
240 373.68 l 
240 370.08 l 
h 
f
239.52 373.68 m 
239.52 377.04 l 
251.52 373.68 l 
239.52 370.08 l 
h 
f*
217.44 373.2 0.48 0.96 re f
239.04 373.2 0.48 0.96 re f
217.92 374.16 m 
217.92 373.2 l 
239.04 373.2 l 
239.04 374.16 l 
h 
f
BT
193.2 369.12  TD
0.0816  Tc (INT) Tj
ET
endstream
endobj
33 0 obj
14915
endobj
31 0 obj
<<
/Type /Page
/Parent 28 0 R
/Resources <<
/Font <<
/F0 6 0 R 
/F1 8 0 R 
>>
/ProcSet 2 0 R
>>
/Contents 32 0 R
>>
endobj
35 0 obj
<<
/Length 36 0 R
>>
stream
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.