-
By accessing this website you agree to the terms and conditions that govern
its use. Please see our Legal page before
proceeding further. Copyright © 2005 Hevday Logic Limited.
All rights reserved.
Website queries should be directed to
Webmaster
|
The Symbol Editor is used to create symbols for user-defined schematics. These
symbols are used to represent instances of the user-defined schematics when
placed on the Design Canvas. When the Symbol Editor is opened for the first time
on a schematic the vector graphics drawing area contains the default
representation for the symbol. This representation can be modified or
entirely removed to allow complete control over how a schematic instance looks
and behaves.
The main parts of the Symbol Editor are:
- The vector drawing area
- The Toolbox
- The Width and Height controls
- The zoom level buttons
- The Undo/Redo buttons
- The Data Tree
- The Expand and Compact buttons
This is the area where manipulation of the visual representation of the symbol
takes place. This area acts in much the same way as the Design Canvas does with
respect to vector graphics. However the main difference is that for every input
and output that the schematic contains there is a red graphic which
represents the placement of the pin on the symbol. To find out which pin a given
red graphic represents hover the mouse over it and the input or output name will
appear in the text label just above the vector drawing area. Each red pin
graphic can be moved by dragging it with the mouse. This allows placement of
pins around any edge of the symbol.
The 5 tools in the toolbox can be used to manipulate the vector drawing area in
the same way that they are used on the Design Canvas.
-
The Width and Height Controls
These controls allow you to resize the symbol in increments equal to the size of
the Design Canvas grid. The controls will not allow resizing of the symbol any
smaller than the space taken up by existing graphics, if the minimum size is too
large then the graphics on the symbol must be rearranged or deleted before the
symbol can be made smaller. The minimum size for a symbol is 2 by 2 grid
squares, while the maximum size is 1000 by 1000 grid squares.
These buttons can be clicked or held down to adjust the zoom level of the vector drawing area. Alternatively, if you have a mouse with a wheel on it, zooming can be done by holding down the Ctrl key and scrolling the mouse wheel backwards or forwards while the cursor is over the drawing area.
-
The Undo and Redo Buttons
Each separate modification to the vector drawing area can be undone and then if
desired, redone. These actions work the same way as the standard Undo and Redo
actions for the main project. Note though, that undo and redo for the Symbol
Editor are separate from their counterparts in the main project. When the OK
button is pressed on the Symbol Editor the symbol modification made using the
Symbol Editor is counted as one modification in the project, even if many
separate modifications where made to get the symbol to it's final state,
therefore if you click Undo on the main project window after clicking OK on the
Symbol Editor, the symbol will revert back to it's form before symbol editing
took place.
Likewise, if the Cancel button is clicked on the Symbol Editor, no change is
made to the project, even if the symbol was modified extensively.
The Data Tree can be used to place data manipulation controls onto the
schematic's symbol. These controls are actually the data manipulation controls
from components, or sub components inside the schematic. For example, it is
possible to locate and place a number viewer and manipulation control from a counter
embedded deeply inside sub schematics of the current schematic.
The picture above shows the Data Tree for a schematic called Schematic1. The
first item in the tree is a 16 bit counter, which provides a 16 bit Integer that
can be dragged and dropped onto the symbol. The second item is a Forceable
Buffer, which contains a single bit representing the input to the buffer and a
ThreeSwitch providing the user with a way to force the buffer's output either
low or high. The third item in the tree is an instance of Schematic2 called
inst1. Schematic2 contains three flip flops, which you can display on
Schematic1's symbol. So because Schematic2 contains the flip flops and because
Schematic1 contains an instance of Schematic2, all data items contained in
Schematic2 are available for display on Schematic1's symbol. There is no limit
to the depth of the heirarchy that can be constructed.
The last item in
the tree is a debugging component called a Signal Tap which contains a single
bit, representing the value of the net which it is connected to.
At it's extreme the Data Tree provides a powerful mechanism to construct entire
control panels on a high level symbol, making it possible to view and manipulate
data from disparate parts of the project from a single place.
-
The Expand and Compact Buttons
These buttons allow you to expand or compact the canvas on all sides of the symbol by one grid square. This is useful if you are editing a part of the symbol that is close to the edges of the canvas.
In particular, these buttons allow you to move the automatically placed red pin graphics away from your own graphics to make it easier to select either without the other.
|