Commit Graph

220 Commits

Author SHA1 Message Date
David Shah 4bc68c9620 Fix icebox_vlog for up5k
Since ce1d811, SHIFTREG_DIV_MODE is now 2 bits for the up5k

Signed-off-by: David Shah <dave@ds0.me>
2020-06-29 19:51:06 +01:00
Sylvain Munaut ce1d811d21 icebox: Add support for the bit 1 of SHIFTREG_DIV_MODE on UP5k
This allows selection of the div-by-5 mode of the PLL.
This bit can't be fuzzed because it's not supported by the lattice
tools at all ...

This only works for sure on the UP5k.

I tested HX8k and it didn't support it, so I'm only adding this on
the known working FPGA.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-06-03 10:45:31 +02:00
Miodrag Milanovic 5e9fc56e0a Make sure that scripts find files on final install 2020-04-14 18:14:32 +02:00
eine 7a7c085e9b icebox: fix missing DESTDIR for icebox_chipdb 2020-04-10 19:10:00 +02:00
Miodrag Milanovic fe3086a733 Support custom PROGRAM_PREFIX 2020-04-10 10:05:17 +02:00
Clifford Wolf 2ccae0d386 Only dump memory initialization in icebox_vlog if present in ASC file, fixes #228
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-08-08 17:07:52 +02:00
David Shah 1cec1328e0 up5k: Fix TOPADDSUB_CARRYSELECT_0 override where it swaps with osc trimming
Signed-off-by: David Shah <dave@ds0.me>
2019-07-03 12:54:00 +01:00
Simon Schubert 56978cde58 add RGB_DRV/LED_DRV_CUR for u4k 2019-06-10 13:06:11 +02:00
Michael Buesch eec6555603 icebox_vlog: Use cached re functions 2019-06-08 16:12:16 +02:00
Michael Buesch 00213ed9c3 icebox_stat: Use cached re functions 2019-06-08 16:12:16 +02:00
Michael Buesch 51a11ffc81 icebox_maps: Use cached re functions 2019-06-08 16:12:16 +02:00
Michael Buesch e0642ba06e icebox_html: Use cached re functions 2019-06-08 16:12:16 +02:00
Michael Buesch c9e741cfbc icebox_hlc2asc: Use cached re functions 2019-06-08 16:12:16 +02:00
Michael Buesch 30769bbfd0 icebox_explain: Use cached re functions 2019-06-08 16:12:16 +02:00
Michael Buesch 52bbe0f469 icebox_diff: Use cached re functions 2019-06-08 16:12:16 +02:00
Michael Buesch c4ac25e096 icebox_colbuf: Use cached re functions 2019-06-08 16:12:16 +02:00
Michael Buesch d26ac8d09e icebox_asc2hlc: Use cached re functions 2019-06-08 16:12:16 +02:00
Michael Buesch 2aff52f10a icebox: Use cached re functions 2019-06-08 16:12:16 +02:00
Michael Buesch 795e0003f2 icebox: Add helper functions to LRU cache regular expression results 2019-06-08 16:12:16 +02:00
Michael Buesch 5f49bea71c icebox: Use LRU cache for often called function tile_has_net() 2019-06-08 16:12:07 +02:00
Simon Schubert be0bca0230 u4k: add SMCCLK cell location
icecube uses SMCCLK.CLK to "legalize" output cells.  Unclear what this
is for, but it appears in almost all outputs.
2019-02-22 22:35:55 +01:00
Simon Schubert d76ac32ec9 iCE40 Ultra = iCE5LP = u4k port 2019-02-22 22:35:55 +01:00
Clifford Wolf 5ab07ed32a
Merge pull request #178 from elmsfu/hlc/add_symbols_support
hlc: parse '.sym>' to track signal names from HLC to ASC
2018-10-10 13:46:31 +02:00
Andrew Wygle 9dbc14410f Add support for cm36 and swg25tr lm4k packages. 2018-08-28 08:29:53 -07:00
Keith Rothman 497028cf5a Add 5k support to hlc2asc.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2018-08-09 13:01:18 -07:00
Elms 542e9ef0f3 icebox: parse '.sym>' HLC to track signal names 2018-07-26 10:12:56 -07:00
Elms 61aa5c5094 icebox_hlc2asc: fix _lut_ keyword parsing
'self.lut_bits is None' was always false. The _lut_ keyword is used by asc2hlc, so when converting asc->hlc->asc the lut_bits were always all zeros.
2018-07-19 16:03:20 -07:00
Larry Doolittle e0eaaf5b91 Spelling fixes in messages 2018-07-19 13:59:42 +02:00
Tim 'mithro' Ansell 22f10b9e22 hlc: Use glb_network for current device.
Previously the 1k global networks were hard coded. This now uses the
values from the given part.
2018-07-16 18:05:49 -07:00
Clifford Wolf 763eb0f217
Merge pull request #168 from elmsfu/hlc2asc/verilog_literal_ram_data
icebox_hlc2asc: Allow data of ram to use verilog literal format
2018-07-10 21:21:13 +02:00
Clifford Wolf 9ccdd95ff7
Merge pull request #167 from mithro/icebox_vlog_drivers
icebox_vlog: Better information about drivers for nets.
2018-07-10 21:20:59 +02:00
Clifford Wolf 2d1f1f6258
Merge pull request #164 from mithro/global-fix
Fix spelling and io_X/GLOBAL_OUTPUT_NETWORK
2018-07-10 21:20:20 +02:00
Tim 'mithro' Ansell d0f654b0c6 icebox_vlog: Fix constant LUT output. 2018-07-08 18:18:56 -07:00
Tim 'mithro' Ansell ef618927ca icebox_vlog: Save error message to file and print it.
Previously if you were doing;

`icebox_vlog example.asc > example_bit.v` you would just get;

```
Traceback (most recent call last):
  File "icebox_vlog.py", line 947, in <module>
    assert False
AssertionError
```

Now you get;
```
Traceback (most recent call last):
  File "icebox_vlog.py", line 948, in <module>
    assert False, "\n  ".join(emsg)
AssertionError: Single-driver-check failed for 2 nets:
  n10 has 0 drivers: []
  n15 has 2 drivers: ['clk', 'clk2']
```
2018-07-08 15:59:53 -07:00
Elms 41ac3eaeab icebox_hlc2asc: Allow data of ram to use verilog literal format 2018-07-03 11:31:43 -07:00
Tim 'mithro' Ansell b2e1df618c icebox_vlog: Better information about drivers for nets. 2018-07-03 11:21:07 -07:00
Tim 'mithro' Ansell a3ae94cbeb icebox_hlc2asc: Allow io_X/GLOBAL_OUTPUT_BUFFER 2018-06-22 21:44:48 -07:00
Tim 'mithro' Ansell e2adc23681 icebox_hlc2asc: Fix spelling in error message. 2018-06-22 21:44:39 -07:00
Elms ac47e8e13c icebox_hlc2asc: update to support device by family 2018-06-20 07:31:19 -07:00
Elms 2c8539a90d icebox_hlc2asc: Adding more descriptive errors messages 2018-06-20 07:30:59 -07:00
Tim 'mithro' Ansell f1f9da2d5b icebox_hlc2asc: Set LUT bits to zero by default. 2018-06-15 17:04:25 -07:00
Clifford Wolf 492a337202
Merge pull request #160 from mithro/hlc-sort
icebox_hlcsort: Adding a tool for canonicalizing HLC files.
2018-06-15 17:58:58 +02:00
Tim 'mithro' Ansell bb025493aa icebox_hlcsort: Adding a tool for canonicalizing HLC files.
This is done by sorting all the commands inside a block. Doing so makes
it much easier to diff two files.
2018-06-14 17:54:25 -07:00
Tim 'mithro' Ansell fdc6f1a1b1 icebox: Fix issue introduced by f7e9fec63a
Current code fails with the following;
```
Parse error in line 94:
        span4_y3_g15_6 -> local_g0_3 -> D_OUT_0
```
2018-06-14 17:23:15 -07:00
Clifford Wolf 25cda32bb8
Merge pull request #151 from mithro/hlc-lut-init
icebox_hlc2asc: Allow truth tables to be specified as init string.
2018-06-13 13:44:04 +02:00
Clifford Wolf 73e2ddb7c7
Merge pull request #158 from mithro/remove-bidir-hlc
Remove bidir stuff in HLC
2018-06-13 13:43:24 +02:00
Clifford Wolf 90d3725119
Merge pull request #156 from mithro/hlc-devices
icebox_hlc2asc: Accept device types such as HX1K
2018-06-13 13:42:18 +02:00
Clifford Wolf 0cf4a21209
Merge pull request #153 from mithro/lout-driver
icebox: Fix driver detection for LUT cascade.
2018-06-13 13:37:43 +02:00
Tim 'mithro' Ansell 82f2f3d278 HLC: Use '~>' instead of '<->' for routing switches.
As mentioned in ca6b2d9ebd, the 'routing'
switches are not actually bidirectional. This makes the '<->' specifier
very misleading.

Instead use '~>' to differentiate it from the 'buffer' switches.
2018-06-12 19:18:50 -07:00
Tim 'mithro' Ansell d8d30fa630 icebox_hlc2asc: Remove the bidirectional support.
See ca6b2d9ebd.
2018-06-12 19:18:45 -07:00