예제 #1
0
 def transfer(self, devtype, position, part, width, capture):
     super().transfer(devtype, position, part, width, capture)
     temp = _TEMPLATES[devtype]
     if devtype != 'detect':
         temp = temp.replace('#BITSTREAM#', self.bitstream)
     with open('vivado-prog.tcl', 'w', encoding='utf-8') as file:
         file.write(temp)
     return run(self._TRF_COMMAND, capture)
예제 #2
0
 def transfer(self, devtype, position, part, width, capture):
     super().transfer(devtype, position, part, width, capture)
     temp = _TEMPLATES[devtype]
     if devtype not in ['detect', 'unlock']:
         temp = temp.replace('#BITSTREAM#', self.bitstream)
         temp = temp.replace('#POSITION#', str(position))
         temp = temp.replace('#NAME#', part)
         temp = temp.replace('#WIDTH#', str(width))
     with open('ise-prog.impact', 'w') as file:
         file.write(temp)
     return run(self._TRF_COMMAND, capture)
예제 #3
0
 def transfer(self, devtype, position, part, width, capture):
     super().transfer(devtype, position, part, width, capture)
     result = subprocess.run(
         'jtagconfig', shell=True, check=True,
         stdout=subprocess.PIPE, universal_newlines=True
     )
     result = result.stdout
     if devtype == 'detect':
         print(result)
     else:
         cable = re.match(r"1\) (.*) \[", result).groups()[0]
         cmd = self._TRF_COMMAND % (cable, self.bitstream, position)
         result = run(cmd, capture)
     return result
예제 #4
0
파일: openflow.py 프로젝트: smgl9/pyfpga
 def transfer(self, devtype, position, part, width, capture):
     super().transfer(devtype, position, part, width, capture)
     template = os.path.join(os.path.dirname(__file__), 'openprog.sh')
     with open(template, 'r') as file:
         text = file.read()
     text = text.format(
         family=self.part['family'],
         project=self.project,
         #
         oci_engine=self.oci_engine,
         cont_iceprog=self.conts['iceprog'],
         cont_openocd=self.conts['openocd'],
         tool_iceprog=self.tools['iceprog'],
         tool_openocd=self.tools['openocd'])
     with open('openprog.sh', 'w') as file:
         file.write(text)
     return run(self._TRF_COMMAND, capture)