제 목표는 파이썬 스크립트를 사용하여 FPGA의 일부 레지스터를 읽는 것입니다. 하드웨어 (FPGA)에서 일부 레지스터를 구현했으며 레지스터를 읽으려고합니다. C에서 레지스터를 읽을 수있는 일부 프로그램이 있습니다. 하지만 필자는 python으로 읽기/쓰기 프로그램을 작성해야하므로 (python으로 작성된) 내 verifcation 환경과 통합 할 수 있습니다. 나는 파이썬 (초보자 수준)에 익숙하지 않으므로 제안과 의견을 통해 나를 안내 할 수 있기를 바랍니다. 아래는 내가 구현 한 코드입니다.파이썬을 사용하여 hw에서 레지스터 읽기
이것은 내 코드입니다.
#!/usr/bin/env python
import array
import fcntl
import re
import socket
import struct
import os
#connectedSockets = {}
# IOCTL Commands
SIOCREGREAD = 0x89F0
SIOCREGWRITE = 0x89F1
reg = 0x58000008
# open the NF descriptor
# Open a file
nf = os.open("/dev/nf10", os.O_RDWR)
print "Opened NF descriptor"
# Now get a file object for the above file.
nf0 = os.fdopen(nf, "w+")
#print "opened nf0 file object"
inner_struct = struct.pack("II", reg, 0x0)
inner_struct_pinned = array.array('c', inner_struct)
print inner_struct_pinned
fcntl.ioctl(nf0, SIOCREGREAD,)
retval = struct.unpack("II", inner_struct_pinned)[0]
print retval
os.fdclose(nf)
코드가 작동합니까? 당신은 실제로 문제가 무엇인지 말하지 않았습니다. –