Re: Another CCPU HDL model appears.

From: Ed Henciak <ehenciak_at_yahoo.com>
Date: Fri Apr 17 2009 - 21:06:06 EDT

Jason,

   There's always room for making multiple models :-)! I've had this
rotten idea of an FPGA
CCPU since 1998. In fact, for my senior project in college, I had a "12
bit CPU running
on an FPGA" (couldn't do the whole CCPU back then....I lacked skills :-)
... but it was a fully working
CPU in the end!!! :-) ).

    Over the years, I always got distracted by shiny metal objects.
However, one Christmas Eve,
I decided to bang out the code I had rattling in my brain since I was
frustrated to have never finished
that (among many) projects. I never did more with it though. I
basically used Zonn's docs as a
template and worked from there. I think Zonn *is* secretly the CCPU
running in overkill mode.

    My approach consists of two main functional units. One is a basic
state machine to sequence
instructions (i.e. fetch-decode-execute ... branching, etc) as well as
provide a delay in the event the single cycle
instructions are happening too quickly.

    The other main unit I have is a VHDL procedure (basically the same
thing as a function in Verilog) that
acts as the ALU + determines flag status...I did this since many
instructions are single cycle and that was
the easiest way to model the ALU in an HDL. Normally, I hate
functions/procedures as it makes the code
nasty to follow unless you are familiar with everything.

    The code synthesizes, but I have a ton of work to do in terms of
verification. Moreover, I have some
evil boss across the country making me do things for him, so I flat out
cannot work on it at this time. So,
please, keep making this progress!!!!! I still also have to add the MUL
instruction (no big deal) and the
vector shift registers (big deal).

   I am intrigued by these Linux tools. I'll be honest, I am spoiled as
I have access to Modelsim at work.
For Verilog, I kind of dig that $50 Veritakwin program. I just put
Opensuse 11.1 on my machine here at
home (via VMWare) since Xilinx's EDK environment is a flat out pile of
&$^% in Windows....once things settle down
I am going to give those free tools a test drive. Another person here
on Vectorlist suggested them as well.

  Just curious...I have seen some mention that Icarus supports synthesis
as well as simulation...what have
your results been like on other, more complex projects?

  Again, this is great news...if anything, both a VHDL and Verilog model
may exist when all is said and done.
However, given my track record on releasing things, you're going to beat
me by a decade or two. The only
personal project I ever finished was my own Atari 2600-on-a-chip, but I
want to fix two more bugs before
releasing that (I was drunk and hated my job at the time....decided to
make that to blow off steam....sad, I know).

  Again, keep it going :-)!

Ed

Jason Sullivan wrote:
> Hi folks! After talking to Zonn and looking through the archives,
> this will probably sound like a familiar message.
>
> I've been working the past little while or so on a Verilog HDL model
> of the Cinematronics CPU. Started with the Armor Attack schematics
> and Zonn's simulator and I've gotten to the point where instructions
> are being decoded correctly and I'm close to getting the sequencer
> working (which I know sounds strange, but trust me it makes sense.
> Still wrestling with a reset problem), so I figured I'd ask Zonn a few
> direct questions and ended up checking out the list to find that y'all
> are a couple of weeks ahead of me (which I guess is good, since I'm
> usually years behind on things like this) :-).
>
> A few toolset stats: I'm doing this all on Linux, so so far I'm using
> Verilog, the Icarus Verilog synthesizer/simulator, and GTK wave. I
> haven't gotten to the point where I'm looking for vectors yet, but I
> think I'm pretty close, and I'm still hand coding test cases. I
> haven't done a gate estimate, but I'm betting it's not going to take
> up much space at all.
>
> So, my question to you folks is this: Is there room for two of these?
> Does that even make sense? Would you like my help on your current one,
> Chris (I don't really know VHDL, though)? I'm more interested in
> making a drop-in replacement board for the arcade machines, rather
> than a vector to vga thing simply because I started this with the
> intent of keeping the vector machines going.
>
> Alright, back to prodding the sequencer.
>
---------------------------------------------------------------------------
** Unsubscribe, subscribe, or view the archives at http://www.vectorlist.org
** Please direct other questions, comments, or problems to chris@westnet.com
Received on Fri Apr 17 21:06:07 2009

This archive was generated by hypermail 2.1.8 : Fri Apr 17 2009 - 21:50:01 EDT