summaryrefslogtreecommitdiffstats
path: root/fpga/hp_lcd_driver
diff options
context:
space:
mode:
authorroot <root@new-fish.medaka.james.internal>2025-05-06 19:01:43 +0100
committerroot <root@new-fish.medaka.james.internal>2025-05-06 19:01:43 +0100
commit0a3f257e9b86c0ea31b6c3b2df03be4e9064fb8d (patch)
tree67cc3e5691253cfd744ee7146e8637d30dec3ede /fpga/hp_lcd_driver
parent5aaf9d42ebe4767b7a076a2c615406549b4529f4 (diff)
downloadhp_instrument_lcds-0a3f257e9b86c0ea31b6c3b2df03be4e9064fb8d.tar.gz
hp_instrument_lcds-0a3f257e9b86c0ea31b6c3b2df03be4e9064fb8d.tar.bz2
hp_instrument_lcds-0a3f257e9b86c0ea31b6c3b2df03be4e9064fb8d.zip
various improvements
Diffstat (limited to 'fpga/hp_lcd_driver')
-rwxr-xr-xfpga/hp_lcd_driver/g2
-rw-r--r--fpga/hp_lcd_driver/hp_lcd_driver.vhdl15
-rwxr-xr-xfpga/hp_lcd_driver/prog5
-rw-r--r--fpga/hp_lcd_driver/smh-ac415.mk61
4 files changed, 72 insertions, 11 deletions
diff --git a/fpga/hp_lcd_driver/g b/fpga/hp_lcd_driver/g
index 1ee944e..90be90b 100755
--- a/fpga/hp_lcd_driver/g
+++ b/fpga/hp_lcd_driver/g
@@ -2,4 +2,4 @@
set -e
make smh-ac415
rsync -varP -e ssh ./ 10.16.66.111:${PWD}/
-ssh 10.16.66.111 "cd ${PWD} && /root/prog"
+ssh 10.16.66.111 "cd ${PWD} && ./prog"
diff --git a/fpga/hp_lcd_driver/hp_lcd_driver.vhdl b/fpga/hp_lcd_driver/hp_lcd_driver.vhdl
index 98714e4..8d1635f 100644
--- a/fpga/hp_lcd_driver/hp_lcd_driver.vhdl
+++ b/fpga/hp_lcd_driver/hp_lcd_driver.vhdl
@@ -193,14 +193,15 @@ begin
rd_data => rd_data
);
+
+
+ r<=x"00";
+ b<=x"00";
+
+ g <= x"ff" when rd_data(1) = '1' else
+ x"80" when rd_data(0) = '1' else
+ x"00";
- r <= x"ff" when rd_data(1) = '1' else
- x"00";
- g <= x"ff" when rd_data(0) = '1' else
- x"ff" when rd_data(1) = '1' else
- x"00";
- b <= x"ff" when rd_data(1) = '1' else
- x"00";
diff --git a/fpga/hp_lcd_driver/prog b/fpga/hp_lcd_driver/prog
index eab1443..cf26f2f 100755
--- a/fpga/hp_lcd_driver/prog
+++ b/fpga/hp_lcd_driver/prog
@@ -1,7 +1,8 @@
#!/bin/bash
-OPENOCD="/root/projects/hp_instrument_lcds/fpga/prefix/bin/openocd -f interface/altera-usb-blaster.cfg -f ep4ce15.cfg"
-${OPENOCD} -c 'svf -tap $CHIPNAME.tap ./build_smh-ac415/hp_lcd_driver.svf; shutdown ; quit'
+#OPENOCD="/root/projects/hp_instrument_lcds/fpga/prefix/bin/openocd -f interface/altera-usb-blaster.cfg -f ep4ce15.cfg"
+OPENOCD="openocd -f interface/altera-usb-blaster.cfg -f ep4ce15.cfg"
+${OPENOCD} -c 'svf -tap $CHIPNAME.tap ./build_smh-ac415/hp_lcd_driver-p.svf; shutdown ; quit'
diff --git a/fpga/hp_lcd_driver/smh-ac415.mk b/fpga/hp_lcd_driver/smh-ac415.mk
index 7c2d649..2fdacc5 100644
--- a/fpga/hp_lcd_driver/smh-ac415.mk
+++ b/fpga/hp_lcd_driver/smh-ac415.mk
@@ -3,6 +3,9 @@ include relpath.mk
BOARD=smh-ac415
FAMILY=Cyclone IV E
PART=EP4CE15F23C8
+CPART1=CFI_64M
+CPART2=QSPI_64M
+#EPCS16
TOP=hp_lcd_driver
BUILD=build_${BOARD}
OF=output_files
@@ -30,9 +33,15 @@ FIT=${BUILD}/${OF}/$(PROJECT).fit.rpt
ASM=${BUILD}/${OF}/$(PROJECT).asm.rpt
ASM=${BUILD}/${OF}/$(PROJECT).sta.rpt
SOF=${BUILD}/${OF}/${PROJECT}.sof
+COF=${BUILD}/${OF}/${PROJECT}.cof
+POF=${BUILD}/${OF}/${PROJECT}.pof
+#JIC=${BUILD}/${OF}/${PROJECT}.jic
+CDF=${BUILD}/${OF}/${PROJECT}.cdf
SVF=${BUILD}/${PROJECT}.svf
+PSVF=${BUILD}/${PROJECT}-p.svf
-default:${SVF}
+default:${SVF} ${PSVF}
+ echo ${PSVF}
${BUILD}/%.vhd ${BUILD}/%.qip:%.vhdl
@@ -81,6 +90,56 @@ ${STA}:${FIT}
svf:${SVF}
${SVF}:${SOF}
(cd ${BUILD} && run_quartus quartus_cpf ${CPF_ARGS} $(call relpath,$<,${BUILD}) $(call relpath,$@,${BUILD}) )
+#${JIC}:${SOF}
+# (cd ${BUILD} && run_quartus quartus_cpf -c -s ${PART} -d ${CPART} $(call relpath,$<,${BUILD}) $(call relpath,$@,${BUILD}) )
+#${SVFP}:${JIC}
+# (cd ${BUILD} && run_quartus quartus_cpf ${CPF_ARGS} $(call relpath,$<,${BUILD}) $(call relpath,$@,${BUILD}) )
+
+
+${COF}: ${SOF}
+ echo '<?xml version="1.0" encoding="US-ASCII" standalone="yes"?>' > $@
+ echo '<cof>' >> $@
+ echo ' <eprom_name>${CPART_1}</eprom_name>' >> $@
+ echo ' <output_filename>$(call relpath,${POF},${BUILD})</output_filename>' >> $@
+ echo ' <n_pages>1</n_pages>' >> $@
+ echo ' <width>1</width>' >> $@
+ echo ' <mode>0</mode>' >> $@
+ echo ' <sof_data>' >> $@
+ echo ' <user_name>Page_0</user_name>' >> $@
+ echo ' <page_flags>1</page_flags>' >> $@
+ echo ' <bit0>' >> $@
+ echo ' <sof_filename>$(call relpath,${SOF},${BUILD})</sof_filename>' >> $@
+ echo ' </bit0>' >> $@
+ echo ' </sof_data>' >> $@
+ echo ' <version>5</version>' >> $@
+ echo ' <create_cvp_file>0</create_cvp_file>' >> $@
+ echo ' <options>' >> $@
+ echo ' <map_file>1</map_file>' >> $@
+ echo ' <option_start_address>0</option_start_address>' >> $@
+ echo ' <dynamic_compression>0</dynamic_compression>' >> $@
+ echo ' </options>' >> $@
+ echo '</cof>' >> $@
+
+${POF}:${COF}
+ (cd ${BUILD} && run_quartus quartus_cpf -c $(call relpath,$<,${BUILD}))
+# (cd ${BUILD} && run_quartus quartus_cpf -c -d EPCQ64 $(call relpath,$<,${BUILD}) $(call relpath,$@,${BUILD}) )
+
+${CDF}:${POF}
+ echo 'JedecChain;' > $@
+ echo ' FileRevision(JESD32A);' >> $@
+ echo ' DefaultMfr(6E);' >> $@
+ echo '' >> $@
+ echo ' P ActionCode(Ign)' >> $@
+ echo ' Device PartName(${CPART2}) MfrSpec(OpMask(0) SEC_Device(QSPI_64MB) Child_OpMask(3 0 0 0) FullPath("$(call relpath,${SOF},${BUILD})") PFLPath("$(call relpath,${POF},${BUILD})"));' >> $@
+ echo '' >> $@
+ echo 'ChainEnd;' >> $@
+ echo '' >> $@
+ echo 'AlteraBegin;' >> $@
+ echo ' ChainType(JTAG);' >> $@
+ echo 'AlteraEnd;' >> $@
+
+${PSVF}:${CDF}
+ (cd ${BUILD} && run_quartus quartus_cpf ${CPF_ARGS} $(call relpath,$<,${BUILD}) $(call relpath,$@,${BUILD}) )