Re: Help with GAL needed

From: didier derny <didier_at_aida.org>
Date: Fri, 19 Apr 2013 10:34:40 +0200
Message-ID: <517101A0.1000903@aida.org>
Hi,

yesterday, I was playing with my fpga board,
so I tried to write some vhd from your schematics

xilinx ise and  lattice isplever classic project in this file: 
http://www.cbm8000.com/rb.zip

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;

     ENTITY rb IS
         PORT (
             clk  : in  STD_LOGIC;
             rdy  : in  STD_LOGIC;
             clk0 : out  STD_LOGIC);
     END rb;

architecture Behavioral of rb is
     SIGNAL rdy_n       : std_logic;
     SIGNAL clk_n       : std_logic;
     SIGNAL rdy_n_x_clk : std_logic;
     SIGNAL rdy_x_clk   : std_logic;
     SIGNAL f1          : std_logic;
     SIGNAL f2          : std_logic;

BEGIN
     clk_n       <= not clk;
     rdy_n       <= not rdy;
     rdy_n_x_clk <= not (rdy_n and clk);
     rdy_x_clk   <= not (rdy and clk);
     f1          <= not (rdy_n_x_clk and f2);
     f2          <= not (rdy_x_clk and f1);
     clk0        <= not (clk_n and f2);
END Behavioral;

it produced something apparently working
check rb.jpg in the zip file it's what I get on the logic analyser.

I also tried on lattice isplever classic,
it compile without errors but I dont think it produced something usable...


On 18/04/2013 09:07, Baltissen wrote:
> Hallo allemaal,
>   
>   
> I have programmed several GALs so far but they all contained only lineair equations. I have designed a WAIT circuit for the 65816, which works fine, that is built using TTL gates: http://www.baltissen.org/images/65816rdy.png
> As you can see, this schematic contains a flipflop. I use the 'old' CUPL.EXE to compile my equations. Please have a look at my equations for this schematic:
>
>
> 	Name		ISA bus with 65816, GAL #3b;
> 	Device	G16V8AS;
> 	Designer	Ruud Baltissen;
> 	Date		2013-04-18;
> 	Revision	V0.1;
>
> 	Assembly	--;
> 	Company 	--;
> 	Location	--;
> 	Partno 	--;
>
>      
> /* Define Logic Operators */
> 	/* AND = &  */
> 	/* OR = #   */
> 	/* NOT = !  */
>
>
> /* Define Input Pins */
> 	pin  2 = CLK;
> 	pin  3 = RDY;
>
> /* Define Output Pins */
> 	pin 12 = PHI0;		/* regulated CLK */
> 	pin 13 = FF1;
> 	pin 14 = FF2;
>
> /* Boolean Equations */
> 	FF1  = !(!(!RDY & CLK) & FF2);
> 	FF2  = !(!(RDY & CLK) & FF1);
> 	PHI0 = !(!CLK & FF2);
> 	
>
> CUPL compiled without any problem. But does it mean the above is good? I know it can be optimised/simplified, but as you can see the equations are a literally translation of the hardware. One part can be replaced by a single OR gate but then I would need at least three ICs in real life, now only two.
>
> As you can see I reserved output pins for the flipflop. IMHO it cannot be done in another way. But I hope to be wrong in this case; the less output pins I need, the better.
>
> Then there is the CLK input at pin 1. IMHO you only need it if you program (a part of) the GAL as counter. I know I haven't used any of the internal registers, but I don't know what CUPL made of it. So I'm not sure yet if it is needed.
>
> Any help, suggestion, etc. is surely appreciated!
>
>
> --
>       ___
>      / __|__
>     / /  |_/     Groetjes, Ruud
>     \ \__|_\
>      \___|       http://www.baltissen.org
>
>
>   
> De informatie in dit e-mailbericht is vertrouwelijk en uitsluitend bestemd voor de
> geadresseerde. Wanneer u dit bericht per abuis ontvangt, verzoeken wij u contact op te
> nemen met de afzender per kerende e-mail. Verder verzoeken wij u in dat geval dit
> e-mailbericht te vernietigen en de inhoud ervan aan niemand openbaar te maken.
> Wij aanvaarden geen aansprakelijkheid voor onjuiste, onvolledige dan wel ontijdige
> overbrenging van de inhoud van een verzonden e-mailbericht, noch voor daarbij
> overgebrachte virussen.
>
> APG Algemene Pensioen Groep NV is gevestigd te Heerlen en is ingeschreven in het
> handelsregister van de Kamer van Koophandel Limburg onder nummer 14099617
>
>
> The information contained in this e-mail is confidential and may be privileged.
> It may be read, copied and used only by the intended recipient.
> If you have received it in error, please contact the sender immediately by
> return e-mail; please delete in this case the e-mail and do not disclose its
> contents to any person. We don't accept liability for any errors, omissions,
> delays of receipt or viruses in the contents of this message which arise as a
> result of e-mail transmission.
>
> APG Algemene Pensioen Groep NV is registered in the trade register of the Chamber
> of Commerce Limburg, The Netherlands, registration number: 14099617
>
>
>         Message was sent through the cbm-hackers mailing list



       Message was sent through the cbm-hackers mailing list
Received on 2013-04-19 09:00:08

Archive generated by hypermail 2.2.0.