Hello everybody,
First, sorry if the subject was already discussed.
So I am now using icestudio since about two weeks.
And one think which is still a bit difficult is to find a wanted component in the collection.
The collection manager is nice, it improves the navigation across the collections.
But, as the numbers of modules and collections increases, I’m asking if it will be interesting and feasible to create an “universal” structure. That will be followed by all the blocks/collection creators.
For example as early starting draft:
Legend:
-BASIC
-INPUT_CIRCUITS
-BUTTONS
-DEBOUNCED
-
-ROTARY ENCODERS
-DEBOUNCED
-
-PULL-UPS
-
-BUS
-SPLIT
- 8 BIT
- separador1-7 (collection Jedi 1.1)
- separador2-6 (collection Jedi 1.1)
- …
- 9 BIT
-MERGE
-LOGIC
-GATES
-DECODERS
-COUNTERS
-…
- INTERNAL MEMORIES
-registers
-Flip Flops
- OUTPUT_CIRCUITS
- EXTERNAL MEMORIES
- EM638325BK- 8Mbit sdram
- GD25Q16CSIG - 2MB spi ram
-I2C
-Mcp23017 - drived trough i2C
-…
-I2S
-SPI
-Mcp23017 - drived trough spi
-…
-GRAPHICS
-LEDs
-seven segments
-led bargraph driver
-LCD
-VARIOUS
-vga
-hdmi
-FPGA CHIP SPECIFIC BLOCKS/NOT WORKING ON ALL FPGAS OR DEVBOARDS
- BRAM-ECP5
- SERDES-ECP5
-…
-HOMEMADE_BLOCKS
-UNCLASSED BLOCKS
And every time someone creates a block it has to file in a new field called ”struct position” in the “edit/project information” window
For example: for the “separador1-7” bus splitter, we can enter in the ”struct position” field “Bus/split/8bits”.
And if someone left a “struct position” field empty, it will appear in the UNCLASSED block section.
Another advantage of this structure system is that it can be easily translatable to other languages.
We can create a big file with structure translations of various languages and when the user select is own language, the structure will appear updated with it. Of course this means that when a block creator fills in the “struct position” fields he does it in is own language. And as icestudio knows user language, it will use the translation file to saves de field with the default language (eg Spanish ;-)). So the shared between users file will always be the same (Spanish) but this will be transparent for the user.
Of course, the block names, which appear at the tree branches extremities (eg. in my above tree: seven segments, mpc23017) will remain untranslated. (too difficult to be implemented )
So if you want, we can use
this post for brainstorming the subject. Who knows, we may be able to agree on a
“universal structure” adapted for icestudio workflow.
Sorry for that long post, I desperately hope not being too messy ;-)
Regards and have a good week-end
Joaquim

Hello Tim,
Thanks a lot for your reply.
For the languages, almost no problem, i understand well French, English, Portuguese and Spanish. Unfortunately i cannot write in Spanish and Portuguese. And it’s a shame because I was born in Portugal.
I agree with everything you wrote.
But about the efforts on the web page, i personally prefer putting them directly in icestudio. This to avoid painfull windows navigations between icestudio and the web browser.
For me the ideal situation is:
For me the point of icestudio, is making think easier by:
But if finding the right icestudio block takes to much time, the user will end-up by re-writing himsef code in verilog (that may already be just there, hidden in a collection).
In a way it is good, we will become more fluent in verilog. ;-)
Concerning the organisation of the exiting blocks (in the current collections),
As I understand, Icesudio is actually just using the folder/subfolder structure of the collection.zip file to show the blocks organised in the dropdown menus.
So, I am volunteer to help reorganising the existing blocks in the right folder and this for every collection.
But First we need to define all together the “best standard folder structure”. And then there is some work on icestudio code to show the dropdown menus with thaht fixed standard structure.
Tim I have seen just now in your github page the 74 family chips collection “ice-chips-verilog.zip3», I tried to add it in icestudio but it fails (invalid collection message).
I looked at the zip file contens and supposed that this collection is only compatible with a previous version of icestudio; Am i rigth?
I had the same message with the “FPGA-peripherals-master.zip collection ”
Regards
Joaquim
--
Has recibido este mensaje porque estás suscrito al grupo "FPGAwars: explorando el lado libre" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/10db4b11-5ecc-4e01-abfd-53f105c787d5n%40googlegroups.com.
Hello Charliva,
It's great to see that we are all thinking in about the same directions :-) This "virtual collection" concept looks promising to me.
Thanks and have a nice day.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/e47e5909-75ea-4050-839a-6656063c82f2n%40googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/bc69a484-532b-4add-9bc9-c11721c3c230n%40googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/a67e289f-95db-4da9-a2d2-54258a73c852n%40googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/8084da93-2fc0-4afd-aee2-55dac3cf9f53n%40googlegroups.com.