[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Simulavr-devel] Re: simulavr 8515 now nearly complete
From: |
Hermann Kraus |
Subject: |
Re: [Simulavr-devel] Re: simulavr 8515 now nearly complete |
Date: |
Sat, 26 Apr 2003 13:48:25 +0200 |
User-agent: |
KMail/1.4.3 |
I think this discussion we started in avr-gcc-list fit to this tread:
> > Could you please publish your patches
> sorry, this is a redisign, no patch. There are nearly no original
> files there. :-( The gdbserver is old and the assembler-instructions
> are old. thats it.
I think this will be very hard to merge to the current version.
> > as I'm working on simulavr, too and
> > so
> > we could put our work together.
>
> Nice. My problem is, that i started at version 0.1.1. and reworked
> the complete sources. So I think there is no way for a merge in source,but
> a merge with ideas .
This is a little bit bad. What is it good for if we have 2 incompatible
simulavr versions?
> > What I've done is:
> > - Changed the handling of the register layout(device dependent instead of
> > the
> > constants defined in the source code)
> My idea is to bring them up in the device constructor. There is a mapper
> class which handle the device depend register layout to the
> implemented hardware class. This is allready done and works.
My way is to keep a table for each device that contains the position for each
bit in the registers. This table is also a feature definition as you can do
checks if a bit is existent and if this check fails you know this feature is
not present.
> > - Added Timer/Counter1,2,3 and OCR0,1ABC,2,3ABC support
> Timer 1 (avr8515) is complete with all OCRx and pwm mode
How did you implement pwm? The user must see the state.
> Also now working eeprom with all waitsates.
Even with an clock and voltage dependend timing?
> EEPROM space reachable from gdb read/write.
Nice feature. Can you please publish the sources so I can give it a look?
Maybe Ted Roth can upload it to the simulavr homepage.
> > - Changed the interrupt mechanism to match the real device behavior
>
> Complete reworked. Now the flags are resettet if neccecarry, everytime
> one instruction is handled before next irq is handled and so on. The timing
> (4 waitstates for stack operation) is also in.
Where do you clear the flags (When raising the interrupt or in the Interrupt
routine)?
BTW: Did you correct the behaviour of clearing flags? (Clearing in simulavr:
writing a 0 instead of a 1)
> > - Added some new devices
> Yes. I have currently only the 8515 inside.
I'm working on a converter to generate to positions of bits and the interrupt
table from the avr-libc header files.
> The next step is to watch out for really!!! equal hardware blocks.
> lot of minor changes from device to device. So that is really a lot work I
> think. I watched out for 2313 with timer 0/1. That are not the same :-(
> (OCRB missing)
Not needed. Just check if a feature is present or not. See above.
There are not a lot off. There are a
> I also added a way to bring the pins outside the simulation and from
> outside to the core. There could be a TCL/TK application that shows the
> pins and let input values there. This is one of the next steps.
Super! This was one of my most important problems.
> And importent, there should be multiple cores run with interconnected pins.
I don't think this would be widely used.
> Seems to be a litle step now. What I prefer is an interworking with some
> well known electronic simulator.
Ok, that's better.
Hermann