Commit Graph

851 Commits

Author SHA1 Message Date
Piotr Esden-Tempski 20ef4efd8b Added the FTDI cable pinout for reference. 2018-08-18 15:29:11 -07:00
Piotr Esden-Tempski f4ff8f7630 Improved JEDEC ID read function.
The function now checks how long the extended JEDEC ID field is for the
particular FLASH chip and only reads the amount provided by the chip.
2018-08-18 15:26:37 -07:00
Piotr Esden-Tempski 3ba1acf31b Replaced some more magic numbers with FLASH command IDs.
I missed those the first time around.
2018-08-18 14:46:12 -07:00
Piotr Esden-Tempski ee7eae0be8 Added easier to read chip_select/reset functions.
Just calling a gpio function with two numbers was not very self
explanatory. The functions now refer to the actual indended action, chip
(de)select for flash, reset and chip (de)select for sram. Reading the
code and understanding what steps are taken should be easier now.
2018-08-18 14:41:42 -07:00
Piotr Esden-Tempski 96b1a90f28 Added more code comments.
Main point was to group the code into three logical segments:
* MPSSE/FTDI defines and functions
* FLASH defines and functions
* iceprog implementation core

While I was at it I also added a few comments for stuff that was not
immediately obvious what it does.
2018-08-16 14:22:53 -07:00
Clifford Wolf 7e732889f0
Merge pull request #180 from litghost/add_5x
Add 5k support to hlc2asc.
2018-08-09 22:10:35 +02: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
Clifford Wolf 8cac6c5840 Also install text timing databases
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-30 16:04:04 +02:00
Elms 542e9ef0f3 icebox: parse '.sym>' HLC to track signal names 2018-07-26 10:12:56 -07:00
Clifford Wolf 4582202121
Merge pull request #176 from elmsfu/hlc2asc/lut_keyword_fix
icebox_hlc2asc: fix _lut_ keyword parsing
2018-07-20 15:05:46 +02:00
Clifford Wolf d992fc76ae
Merge pull request #175 from daveshah1/fix_lutcascade
icetime: Remove non-existent paths from ce/sr to ltout
2018-07-20 15:02:38 +02: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
David Shah c588247387 icetime: Remove non-existent paths from ce/sr to ltout
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-19 18:51:17 +02:00
Larry Doolittle e0eaaf5b91 Spelling fixes in messages 2018-07-19 13:59:42 +02:00
Clifford Wolf 6528b96bec
Merge pull request #173 from osresearch/parallel-make
Allow parallel make all to build each subdir simultaneously
2018-07-17 13:44:04 +02:00
Trammell Hudson 1b1538deb4
Allow parallel make all to build each subdir simultaneously 2018-07-17 07:40:28 -04:00
Clifford Wolf 5aeb5c9b4d
Merge pull request #172 from mithro/hlc-glb
hlc: Use glb_network for current device.
2018-07-17 10:51:55 +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 6a1bd78687
Merge pull request #169 from mithro/patch-1
Update README to be clearer
2018-07-10 21:21:58 +02: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
Clifford Wolf 28d9f2f1ac
Merge pull request #170 from mithro/const-lut-out
icebox_vlog: Fix constant LUT output.
2018-07-10 21:19:38 +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
Tim Ansell 69d32b129b
Update README to be clearer
The example doesn't work out of the box with the iCEblink40-lp1k board.
2018-07-03 13:19:58 -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
Clifford Wolf 16a9962fb1
Merge pull request #162 from elmsfu/hcl2asc/error_messages_and_device_class
icebox_hcl2asc: select device class
2018-06-20 20:03:12 +02: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
Clifford Wolf f029975152
Merge pull request #161 from mithro/lut-bit-defaults
icebox_hlc2asc: Set LUT bits to zero by default.
2018-06-16 20:24:55 +02: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
Clifford Wolf 6596f00ae1
Merge pull request #155 from mithro/icetime-error
icetime: Output where the chipdb should be found.
2018-06-15 17:58:20 +02:00
Clifford Wolf 5c24da3d68
Merge pull request #159 from mithro/fix-fix
icebox: Fix issue introduced by f7e9fec63a
2018-06-15 17:57:27 +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 b1d0af7edd icetime: Output where the chipdb should be found.
Makes it easier to know where it can't be.
2018-06-14 17:31:32 -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 f23b1f212a Fix icetime for .asc files that do not contain all tiles
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 14:32:52 +02:00
Clifford Wolf bb0307a5ab
Merge pull request #149 from tomverbeure/seed
icebram: add option to specify seed for repeatable outcomes.
2018-06-13 13:46:18 +02: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 15e98223f4
Merge pull request #154 from mithro/icetime-args
icetime: Lowercase the device type information.
2018-06-13 13:38:24 +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
Clifford Wolf dd77a918da
Merge pull request #152 from mithro/vlog-fix
icebox: Fix LUT output code.
2018-06-13 13:36:55 +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