abs-tudelft / abs-tudelft/vhdeps

Improper dependency detection for some VHDL constructs

Đang mở
#6 2 bình luận 0 reaction 0 người được giao Xem trên GitHub
enhancement
Ngôn ngữ chính
VHDL
Star
25
Fork
2
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

vhdeps' define/use matching is currently very simplistic, perhaps overly. For instance, it doesn't detect the following properly:

- components that are defined without the optional "is" keyword (there may be more like this)
- usage of components that don't have a port or generic map
- any recognized construct embedded in a string
- ...?

This all has to do with the fact that vhdeps' matching is entirely context-insensitive. For instance, without context sensitivity, component usage like above would require matching anything of the form `: ;`, which leads to a lot of false positives, for instance in signal declarations. To handle this properly, vhdeps' matcher would need to be aware of where blocks start and end at least.

vhdeps also doesn't currently support configurations, multiple architectures per entity, etc. in any way, mostly because I've never used them personally and have rarely seen them be used in the FPGA world.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

The issue describes limitations in vhdeps' dependency detection for VHDL constructs like components without 'is', missing port/generic maps, and strings. Start by examining the parsing logic in the codebase to understand the current context-insensitive matching. Look for files handling VHDL syntax analysis and dependency graph generation. Testing changes will require understanding VHDL semantics and the project's test suite.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Lĩnh vực
devtools
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.