I am trying to pick up the Lattice ispLEVER tool and am having a bit of trouble with it in regards to libraries. I have several files for the various libraries I have written for my VHDL. In order to use them, they have to be compiled in the correct order since some use definitions from the others. I can't seem to figure out how to tell ispLEVER what order to compile the files. It has a way to telling the tool that a given file *is* a library, but that seems to be where it stops. I can't order the files in the project and it doesn't seem to actually understand that the libraries exist in the VHDL. I get several error message all related to libraries not found or identifiers not declared that should have been in the library files. I have looked through every piece of documentation I can find and they all pretty much gloss over the idea of user defined libraries. Is this something so simple I have missed it?
Using Lattice ispLEVER with VHDL libraries
Started by ●February 18, 2008
Reply by ●February 19, 20082008-02-19
Did you include the use clause in your library package files that require dependancies? You can either reference the user defined library itself or just do: use work.my_package; The error messages related to library not found is probably due to the library not being successfully compiled in the first place. Colin "rickman" <gnuarm@gmail.com> wrote in message news:284755cf-f23b-4979-9ecd-25d229fde921@e23g2000prf.googlegroups.com...>I am trying to pick up the Lattice ispLEVER tool and am having a bit > of trouble with it in regards to libraries. I have several files for > the various libraries I have written for my VHDL. In order to use > them, they have to be compiled in the correct order since some use > definitions from the others. I can't seem to figure out how to tell > ispLEVER what order to compile the files. It has a way to telling the > tool that a given file *is* a library, but that seems to be where it > stops. I can't order the files in the project and it doesn't seem to > actually understand that the libraries exist in the VHDL. I get > several error message all related to libraries not found or > identifiers not declared that should have been in the library files. > > I have looked through every piece of documentation I can find and they > all pretty much gloss over the idea of user defined libraries. Is > this something so simple I have missed it? >
Reply by ●February 20, 20082008-02-20
Thanks for the reply. No, that is not the problem. The files compile just fine under Modelsim and using the Altera tools. In both of those tools I can specify the order to compile the files. These libraries are files that I have my personal, common definitions and conversions. I know these files work because they have been used many times before. All I need to know is how the Lattice ispLever tool is told the order to compile the files. On Feb 19, 12:17 pm, "Colin Hankins" <Colin.Hank...@touit.com> wrote:> Did you include the use clause in your library package files that require > dependancies? You can either reference the user defined library itself or > just do: use work.my_package; > > The error messages related to library not found is probably due to the > library not being successfully compiled in the first place. > > Colin > > "rickman" <gnu...@gmail.com> wrote in message > > news:284755cf-f23b-4979-9ecd-25d229fde921@e23g2000prf.googlegroups.com... > > >I am trying to pick up the Lattice ispLEVER tool and am having a bit > > of trouble with it in regards to libraries. I have several files for > > the various libraries I have written for my VHDL. In order to use > > them, they have to be compiled in the correct order since some use > > definitions from the others. I can't seem to figure out how to tell > > ispLEVER what order to compile the files. It has a way to telling the > > tool that a given file *is* a library, but that seems to be where it > > stops. I can't order the files in the project and it doesn't seem to > > actually understand that the libraries exist in the VHDL. I get > > several error message all related to libraries not found or > > identifiers not declared that should have been in the library files. > > > I have looked through every piece of documentation I can find and they > > all pretty much gloss over the idea of user defined libraries. Is > > this something so simple I have missed it?
Reply by ●February 20, 20082008-02-20
No problem. The ispLever uses either Synplify or Precision to do the compilation. You will have to read about the tool you use to specify compile order. I use Precision and I believe you can not specify compile order. It will automatically determine it for you based on heirarchy and dependencies. In making the move to ispLever, I had to add some extra use clauses to my user defined libraries to get things to go under ispLever. Because in my previous tools I could do a compile order but with Precision it looks for heirarchy and dependancy to set compile order. "rickman" <gnuarm@gmail.com> wrote in message news:247a3be4-666e-433f-b6d6-08685b4df397@s37g2000prg.googlegroups.com...> Thanks for the reply. No, that is not the problem. The files compile > just fine under Modelsim and using the Altera tools. In both of those > tools I can specify the order to compile the files. These libraries > are files that I have my personal, common definitions and > conversions. I know these files work because they have been used many > times before. > > All I need to know is how the Lattice ispLever tool is told the order > to compile the files. > > > On Feb 19, 12:17 pm, "Colin Hankins" <Colin.Hank...@touit.com> wrote: >> Did you include the use clause in your library package files that require >> dependancies? You can either reference the user defined library itself or >> just do: use work.my_package; >> >> The error messages related to library not found is probably due to the >> library not being successfully compiled in the first place. >> >> Colin >> >> "rickman" <gnu...@gmail.com> wrote in message >> >> news:284755cf-f23b-4979-9ecd-25d229fde921@e23g2000prf.googlegroups.com... >> >> >I am trying to pick up the Lattice ispLEVER tool and am having a bit >> > of trouble with it in regards to libraries. I have several files for >> > the various libraries I have written for my VHDL. In order to use >> > them, they have to be compiled in the correct order since some use >> > definitions from the others. I can't seem to figure out how to tell >> > ispLEVER what order to compile the files. It has a way to telling the >> > tool that a given file *is* a library, but that seems to be where it >> > stops. I can't order the files in the project and it doesn't seem to >> > actually understand that the libraries exist in the VHDL. I get >> > several error message all related to libraries not found or >> > identifiers not declared that should have been in the library files. >> >> > I have looked through every piece of documentation I can find and they >> > all pretty much gloss over the idea of user defined libraries. Is >> > this something so simple I have missed it? >
Reply by ●February 20, 20082008-02-20
Thanks for the reply. I'm still not sure we are on the same page. I am trying to use ispLever as an IDE. Yes, I am using Synplify for synthesis, but I don't invoke it directly. When I do invoke it directly I can specify the compile order and it works ok. The initial response from the local FAE seems to be that I need to use an EDIT tool flow and manually run the synthesis tool. The initial response from Lattice support is a canned message pointing me to a note totally unrelated to my problem. I am assuming there are some advantages to using the IDE rather than using the tools as separate, unconnected programs. If nothing else, I expect it should make the setup simpler since I should only have to set up the IDE and that will then handle the other tools. Doesn't the I in IDE stand for Integrated? I also can't see to get Modelsim to work with ispLever, it seems they don't license that with the starter kit. So I will be using the Altera or Xilinx tools to actually simulate my code and just use ispLever to do the synthesis to generate a bit file, at least until I make a final decision and buy the tools. I only wish Xilinx had a part that would do the job, but they don't seem to care much for putting FPGAs into small packages without using BGAs. Altera does have a part that will fit the socket, but it doesn't have nearly as many LUTs as the Lattice part. Which do you think would be easier, convincing Lattice to improve their tools, or getting Xilinx to offer some Flash FPGAs in smaller leaded packages? On Feb 20, 1:14 pm, "Colin Hankins" <Colin.Hank...@touit.com> wrote:> No problem. The ispLever uses either Synplify or Precision to do the > compilation. You will have to read about the tool you use to specify compile > order. I use Precision and I believe you can not specify compile order. It > will automatically determine it for you based on heirarchy and dependencies. > > In making the move to ispLever, I had to add some extra use clauses to my > user defined libraries to get things to go under ispLever. Because in my > previous tools I could do a compile order but with Precision it looks for > heirarchy and dependancy to set compile order. > > "rickman" <gnu...@gmail.com> wrote in message > > news:247a3be4-666e-433f-b6d6-08685b4df397@s37g2000prg.googlegroups.com... > > > Thanks for the reply. No, that is not the problem. The files compile > > just fine under Modelsim and using the Altera tools. In both of those > > tools I can specify the order to compile the files. These libraries > > are files that I have my personal, common definitions and > > conversions. I know these files work because they have been used many > > times before. > > > All I need to know is how the Lattice ispLever tool is told the order > > to compile the files. > > > On Feb 19, 12:17 pm, "Colin Hankins" <Colin.Hank...@touit.com> wrote: > >> Did you include the use clause in your library package files that require > >> dependancies? You can either reference the user defined library itself or > >> just do: use work.my_package; > > >> The error messages related to library not found is probably due to the > >> library not being successfully compiled in the first place. > > >> Colin > > >> "rickman" <gnu...@gmail.com> wrote in message > > >>news:284755cf-f23b-4979-9ecd-25d229fde921@e23g2000prf.googlegroups.com... > > >> >I am trying to pick up the Lattice ispLEVER tool and am having a bit > >> > of trouble with it in regards to libraries. I have several files for > >> > the various libraries I have written for my VHDL. In order to use > >> > them, they have to be compiled in the correct order since some use > >> > definitions from the others. I can't seem to figure out how to tell > >> > ispLEVER what order to compile the files. It has a way to telling the > >> > tool that a given file *is* a library, but that seems to be where it > >> > stops. I can't order the files in the project and it doesn't seem to > >> > actually understand that the libraries exist in the VHDL. I get > >> > several error message all related to libraries not found or > >> > identifiers not declared that should have been in the library files. > > >> > I have looked through every piece of documentation I can find and they > >> > all pretty much gloss over the idea of user defined libraries. Is > >> > this something so simple I have missed it?
Reply by ●February 20, 20082008-02-20
rickman wrote:> Thanks for the reply. I'm still not sure we are on the same page. I > am trying to use ispLever as an IDE. Yes, I am using Synplify for > synthesis, but I don't invoke it directly. When I do invoke it > directly I can specify the compile order and it works ok.Then why not just batch this flow, that works ?> The initial > response from the local FAE seems to be that I need to use an EDIT > tool flow and manually run the synthesis tool.Which is what you describe above ?> The initial response > from Lattice support is a canned message pointing me to a note totally > unrelated to my problem. > > I am assuming there are some advantages to using the IDE rather than > using the tools as separate, unconnected programs. If nothing else, I > expect it should make the setup simpler since I should only have to > set up the IDE and that will then handle the other tools. Doesn't the > I in IDE stand for Integrated?Yes, but IDE's often fail on the details, and are tested on the 'first user' stuff. The worst IDEs are the one's that do not allow external tool access :)> > I also can't see to get Modelsim to work with ispLever, it seems they > don't license that with the starter kit. So I will be using the > Altera or Xilinx tools to actually simulate my code and just use > ispLever to do the synthesis to generate a bit file, at least until I > make a final decision and buy the tools. > > I only wish Xilinx had a part that would do the job, but they don't > seem to care much for putting FPGAs into small packages without using > BGAs. Altera does have a part that will fit the socket, but it > doesn't have nearly as many LUTs as the Lattice part.I did see Actel have just released a QFN68 package, for their tiniest FPGA (CPLD sized)> > Which do you think would be easier, convincing Lattice to improve > their tools, or getting Xilinx to offer some Flash FPGAs in smaller > leaded packages?That's easy - talk to Lattice :) Give them an example, and convince them LOTS of users will need to do (from the IDE) what you are trying to do. -jg
Reply by ●February 21, 20082008-02-21
rickman wrote:> All I need to know is how the Lattice ispLever tool is told the order > to compile the files.http://www.latticesemi.com/products/designsoftware/isplever/ispleverstarter/index.cfm Looks like you have the choice of Synplify or Precision. Probably an ordered file list for these. Check the docs. -- Mike Treseler
Reply by ●February 22, 20082008-02-22
On Feb 21, 2:12 pm, Mike Treseler <mike_trese...@comcast.net> wrote:> rickman wrote: > > All I need to know is how the Lattice ispLever tool is told the order > > to compile the files. > > http://www.latticesemi.com/products/designsoftware/isplever/isplevers... > > Looks like you have the choice of Synplify or Precision. > Probably an ordered file list for these. > Check the docs.Thanks for your reply. I had already stated that I could separately invoke Synplify and get the files to compile. I can't get it to work using the Lattice IDE. I contacted the local FAE and found out that the new release from a couple of weeks ago fixes this so that user libraries work correctly. I just find it amazing that at this late date such a simple feature was not working. I wasn't told that it was broken, I think they never supported user libraries until the latest release.
Reply by ●February 22, 20082008-02-22
rickman wrote:> Thanks for your reply. I had already stated that I could separately > invoke Synplify and get the files to compile.Sorry, I missed that.> I can't get it to work using the Lattice IDE.The device vendors all try to package their collections of front and back end tools with with a gui wrapper for demos and examples. None of these stand up to serious use. I am always better off doing the front end and simulation from my favorite editor, and the pin numbers and timing with the place and route tool. -- Mike Treseler
Reply by ●February 25, 20082008-02-25
Gents, Saw this thread go by on my alert list and wanted to check in. From the perspective of the synthesis and simulator, the Project Navigator's job is to supply an ordered file list, command line flags, and in some cases a script to automate a run. There is no user- defined file order 7.0. It will attempt to build an ordered file list automatically. I have seen some VHDL designs fail under 7.0 that requires Service Pack 2 to correct. If all else fails, manage HDL source from within Synplify or Precision and create an EDIF-based ispLEVER project. It's accurate to say Project Navigator has some non-standard conventions for HDL file management. I blame it partially because system has a long history of managing all sorts of non-HDL file formats like schematic, ABEL, and the native Lattice parameter constraints file (LPC) created by IPexpress. Under the hood 7.0 is a big improvement over 6.x, it has far better capacity, performance, and language compliance when dealing with long file lists. It also supports mixing VHDL and Verilog. We are working on this area to make it closer to the conventions you'd find in other EDA tools. Troy Scott Software Marketing Lattice Semiconductor Corporation