Carrier is the physical layer, the frequency of your TRX.
It is divided into 8 timeslots.
Channel is the logical use of each timeslot, whether TCH, BCCH, SDCCH, etc.
Channel is also used to describe the whole carrier, in terms of frequency : Channel 54 means frequency with ARFCN = 54. In this case, it can be confusing.
A frame is a snapshot of a cyclic entity. For instance, the 8TS of a channel are repeating every 8TS. TS0…7, TS0…7, etc.
A block of consecutive ts 0 … 7 is a frame. a tdma frame.