1
-
2
1
import os
3
2
4
3
from mibuild .generic_programmer import GenericProgrammer
5
4
from mibuild .xilinx .programmer import _create_xsvf
6
5
7
- import fpgalink3
8
- fpgalink3 .flInitialise (0 )
6
+ try :
7
+ import fl
8
+ except ImportError :
9
+ import fpgalink3 as fl
10
+
11
+ fl .flInitialise (0 )
9
12
10
13
11
14
class FPGALink (GenericProgrammer ):
@@ -50,28 +53,29 @@ def open_device(self):
50
53
51
54
print ("Attempting to open connection to FPGALink device" , vp , "..." )
52
55
try :
53
- handle = fpgalink3 .flOpen (self .fpgalink_vidpid )
54
- except fpgalink3 .FLException as ex :
56
+ handle = fl .flOpen (self .fpgalink_vidpid )
57
+ except fl .FLException as ex :
55
58
if not ivp :
56
59
raise FLException (
57
60
"Could not open FPGALink device at {0} and"
58
61
" no initial VID:PID was supplied" .format (vp ))
59
62
60
63
print ("Loading firmware into %s..." % ivp )
61
- fpgalink3 .flLoadStandardFirmware (ivp , vp )
64
+ fl .flLoadStandardFirmware (ivp , vp )
62
65
63
66
print ("Awaiting renumeration..." )
64
- if not fpgalink3 .flAwaitDevice (vp , 600 ):
65
- raise fpgalink3 .FLException (
67
+ if not fl .flAwaitDevice (vp , 600 ):
68
+ raise fl .FLException (
66
69
"FPGALink device did not renumerate properly"
67
70
" as {0}" .format (vp ))
68
71
69
72
print ("Attempting to open connection to FPGALink device" , vp ,
70
73
"again..." )
71
- handle = fpgalink3 .flOpen (vp )
74
+ handle = fl .flOpen (vp )
72
75
73
76
# Only Nero capable hardware support doing programming.
74
- assert fpgalink3 .flIsNeroCapable (handle )
77
+ assert fl .flIsNeroCapable (handle )
78
+ print ("Cable connection opened." )
75
79
return handle
76
80
77
81
def load_bitstream (self , bitstream_file ):
@@ -88,10 +92,11 @@ def load_bitstream(self, bitstream_file):
88
92
print ("Programming %s to device." % xsvf_file )
89
93
print ("=" * n )
90
94
handle = self .open_device ()
91
- fpgalink3 .flProgram (handle , 'J:' + self .pin_cfg , progFile = xsvf_file )
95
+ print ("Programming device..." )
96
+ fl .flProgram (handle , "J:" + self .pin_cfg , progFile = xsvf_file )
92
97
print ("Programming successful!" )
93
98
print ("=" * n + "\n " )
94
- fpgalink3 .flClose (handle )
99
+ fl .flClose (handle )
95
100
96
101
def flash (self , address , data_file ):
97
102
raise NotImplementedError ("Not supported yet." )
0 commit comments