home *** CD-ROM | disk | FTP | other *** search
- As1-LSim v1.0 -- A Logic Simulator
- As1*Software © 1989
- by
- Al Villarica
-
- release 1.0 June 2
- - no known bugs
- - no Print yet
- - Solder option not implemented yet
-
- GENERAL
- This program is a logic simulator. It allows one to create logic circuits
- using an intuitive interface. After the circuit is created, it can then
- be simulated. The program currently supports a very limited number of device
- types. A future version will include more devices and possibly, the ability
- to create new devices using a small language. All these additions will
- greatly depend on the responses of people to the program. If you think it's
- worth enhancing, tell me -- it's important for me to know. I can be reached
- on Lattice's board (Al Villarica) or Chiphead's Delight 1-315-492-9071
- (Al Villarica). Please redistribute this program wherever you can. If you
- really really like it, I will accept any donations. Send them to
- Al Villarica
- 408 Arnold Ave.,
- Syracuse NY, 13210
- Comments and bug reports will also be greatly appreciated.
-
- DOCS
- The program is pretty intuitive. If you want to add a new device, select
- the Add Device from the menu. You can also delete devices, add lines,
- delete lines, and rename devices, from the Edit menu. The File menu is
- self-explanatory.
- To connect two devices, just select the Add Lines from
- the Edit menu, then click on an input, click whenever you want to make a turn,
- and finally, click on another device's pin or on another line. If you have
- any questions, don't be afraid to ask -- just leave me mail on any of the
- two boards. If you wish to cancel the line you are working on, just
- press the right mouse button.
- In order to 'see' the outputs of any device, just add a Logic Probe and
- connect it with a line to the output you want to monitor. If you want
- to input into the circuit, then there is a User Input device. Again, just
- connect this to anything you like.
- When finished editing your circuit, choose the Go from the Simulate
- menu. You can also increase the length of the simulation. The Resolution
- is currently not supported.
- The editor window is a virtual window. You can scroll it by using
- the cursor keys on the keyboard. You can enter devices anywhere in this
- virtual drawing space. The input and output windows are also 'virtual', in
- that they can be scrolled if you have more inputs/outputs than can be seen
- in the window.
- The input window shows the state of the input lines presented to the
- simulator. To change the values, just click on the line at the correct
- position, then click again at another place, and the value will be changed.
- I know the description above is really confusing, but I couldn't think of
- any other way to describe it -- just try it, and you'll know how it works.
- To cancel, click with the right mouse button again.
- There are sample drawings with the .drw extension. Drawings need not have
- the .drw extension, but it seemed like a good idea to have them.
-
- LIMITATIONS/ENHANCEMENTS
- Currently, the program does not allow more than 5 outputs to be connected
- to an input. Of course, this would only be done if tri-state devices
- were included -- these would come in a later version if I get enough
- interest from you people out there (not necessarily donations, just interest).
- The program does support propagation delays. For example, you could make
- a flip-flop with two nands or two nors with cross inverted whatevers.
- However, these propagation delays are the same for both HL and LH. Until
- I find a way of modelling different propagation delays, it will have to
- stay that way. If anyone can suggest a way of modelling prop delays,
- hold-time, min clocking freq, setup-time, I would be very happy to hear
- from you. If those things get implemented, then there will be a way to
- actually check to make sure that something doesn't get overclocked, or the
- signal doesn't break the necessary setup/hold/etc times. These would be
- needed if devices such as RAMs, ROMs, microprocessors, etc. are added.
- Of course, those devices will probably be simulated minimally -- that is,
- they will simulate the interfaces to the real world, not necessarily the
- exact functions. For instance, I could simulate the interface of a 68000
- (*AS, *UDS, *LDS, R/W, and other pins) but not actually simulate the 68000
- running a program. I could make the 68000 do a read cycle, a write cycle,
- etc.
-