Modelling a school timetable database

I'm working on a design for a database for school timetable and I need some help. So, basically, the database is made up of tables like teacher, student, subject, TimePeriod, and Classroom. I would just like some advice to see if what I'm doing is allowed. It might not necessarily be good, but I'm beyond that. I’ve created a many-to-many relationship between subject and timePeriod so essentially I'm saying that many Subjects are allocated to many timePeriods, and I've created an "association" table called SubjectPeriod between these. I've then linked two other tables to the SubjectPeriod table like below:

SubjectPeriod (TimePeriodID, SubjectD, ClassroomID, TeacherID, Details) 

Does this make sense or is it even allowed?

I'm not too confident with database design so I'm struggling a little with this.