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

Subversion Repositories zpu

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /
    from Rev 60 to Rev 61
    Reverse comparison

Rev 60 → Rev 61

/trunk/zpu/docs/zpu_arch.html
1316,19 → 1316,20
<ol>
<li>Reduce minimum code size footprint
<ol>
<li>Modify GCC compiler to be able to emit function calls instead of instructions.
E.g instead of issuing MULT, generate function call. This reduces code size overhead
for applications that do not use MULT since the microcode does not need to be in place.
<li>Add single entry for unknown instructions. PC and unsupported instruction is
pushed onto stack before jumping to unkonwn instruction vector. This makes it possible
to write denser microcode for missing instructions.
to write denser microcode for missing instructions. For emulated opcodes that are
not in use, the microcode can more easily be disabled. Determining
that e.g. MULT is not used, can be a bit tricky, but disabling it is easy.
<li>Single entry for *all* unknown instructions does not limit emulation to the
EMULATE instructions today, but instructions such as OR, LOADSP, STORESP, ADDSP,
etc. can also be emulated. This opens up for further reduction in logic usage.
<li>The single entry for all unknown instructions will make it easier to
write a compact custom crt0.s to fit an instruction subset.
write a compact custom crt0.s to fit an instruction subset.
<li>The interrupt is basically an unknown instruction that is injected into
the execution stream.
<li>Possibly modify the java simulator to support the single entry for unknown
instructions.
</ol>
<li>Add floating point add and mult. FADD & FMULT. Option to generate the instructions
from the compiler.
1339,6 → 1340,10
<li>Add support to Zylin Embedded CDT for downloading fully functional ZPU
toolchain. The goal is to allow new users to write and simulate simple ZPU
programs in in less than an hour.
<li>Strip away unused instructions from GCC and add options to GCC for not
emitting more advanced instructions. This will e.g. convert MULT/DIV into
function calls to libgcc and thus make it easier to determine that
microcode is not needed.
</ol>
<h2>Next generation ZPU HDL work</h2>
<ol>

powered by: WebSVN 2.1.0

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